小编can*_*man的帖子

从1..n开始的二进制堆数

给定从1到n的整数,确定可以使用这些数字构造多少有效的二进制堆.

Example: 1 2 3 4
Run Code Online (Sandbox Code Playgroud)

有效分堆是:{1 2 3 4},{1 3 2 4},{1 2 4 3},

因此答案是3

algorithm combinatorics

6
推荐指数
1
解决办法
2284
查看次数

找到在O(n)时间O(1)空间中不重复的数字

对于初学者,我确实看过这些问题:

给定一个整数数组,其中一些数字重复1次,一些数字重复2次,只有一个数字重复3次,你怎么找到重复3次的数字

在数组中查找两个重复数字的算法,无需排序

这一个不同:

给出一个带有一个唯一编号的未排序整数数组,其余数字重复3次,即:

  {4,5,3,  5,3,4, 1, 4,3,5 }
Run Code Online (Sandbox Code Playgroud)

我们需要在O(n)时间和O(1)空间中找到这个唯一的数字

注意:这不是一个功课,只是我遇到一个很好的问题

algorithm

5
推荐指数
1
解决办法
888
查看次数

标签 统计

algorithm ×2

combinatorics ×1