![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法研究
m_vptr
80摩羯座,ISTJ性格。
趁着年轻,不图安逸。
内修其身,外修形象。
刻苦钻研,勤俭理财。
展开
-
寻找只出现1次的1/2个元素
除了1个(或2个)元素只出现一次之外,每个元素都出现两次。 def find_uniq_one(arr): xv = 0 for e in arr: xv = xv ^ e print( xv ) def find_uniq_two_2(arr): axorb = 0 for e in arr: axorb = axorb ^ e dif = 0 while(axo原创 2012-05-31 22:25:58 · 461 阅读 · 0 评论 -
与排序后位置距离<k的数组的排序
阿里巴巴笔试题: 一个含有n个互不相同的整数的数组,任意一个数a[i]的现有位置i和它排序后的位置j的距离不超过k(即i-j的绝对值小于等于k),2= 要求:算法复杂度为O(nlogn)记0分,为O(nk)记2分。满分20分 解法1: 只对中间2k个元素划分,然后递归。 第一层2k步,第二层2^2*k步,一直到第log(n/2k)层,一共2*(1 + 2 + ... 2^(l原创 2012-10-10 16:23:56 · 2130 阅读 · 0 评论