之前看到一个题目,大概是:有一个长度为n的数组,数组内的元素取值范围为0到m,且不相等,要求元素经过n次移动后使数组有序(即算法的复杂度为O(n))。看到题目后想了快速排序和归并排序发现并不能满足题目要求,直到有次看书有看到了桶排序然后豁然开朗,所以决定把这些排序算法再写一遍,加深记忆。约定:之后的...
分类:
其他好文 时间:
2014-05-09 10:52:49
阅读次数:
333
好不容易把内容看懂~最主要的一句话:只需要将10k%N的结果与余数信息数组里非空的元素相加,再去模N,看看会不会出现新的余数~时间太紧迫~先把自己写的代码贴上,以后再详解
1 int FindMin(int N) 2 { 3 if(N <= 1) 4 return N; 5 ...
分类:
其他好文 时间:
2014-05-09 10:50:00
阅读次数:
261
只谈外部中断的windows内核管理,异常和trap不在此文的讨论之列。 1.
windows中断总貌
在windows中,物理上的中断源被抽象为KINTERRUPT结构。一个中断源在windows中对应一个KINTERRUPT数组,数组的长度为CPU的个数,如果是单核系统,那么这个数组长度为1。先...
下面这个代码用两个双层循环遍历了一个二维数组里所有的元素,以我自己机器的测试
上面那个循环耗时基本为下面的一半,两个循环的时间复杂度相同,为什么会有这么大的差别?首先要明白的是不管是几维数组,他们都是用一块地址连续的内存来存储所有的元素,而内存布局的顺序是一整行接着下一个整行排列,第一个循环是一行一...
分类:
其他好文 时间:
2014-05-08 18:31:26
阅读次数:
289
Android开发中,经常会在Java代码与Jni层之间传递数组(byte[]),一个典型的应用是Java层把需要发送给客户端的数据流传递到Jni层,由Jni层的Socket代码发送出去,当然,Jni层也需要把从Socket接收到的数据流返回给Java层。我简单地总结了一下,从Java层到Jni层,...
分类:
移动开发 时间:
2014-05-08 18:23:33
阅读次数:
453
MySQL源码中自己定义了许多数据结构,放在mysys的目录下,源码中通常都使用这些数据结构来组织存放数据,也更容易实现跨平台。下面先来看下MySQL定义的动态数组:【源代码include/array.h
mysys/array.c】typedef struct st_dynamic_array{ ...
分类:
数据库 时间:
2014-05-08 18:10:32
阅读次数:
392
给你一个数组A[n],请你计算出ans=min(|A[i]+A[j]|)(0<=i,j<n). 例如:A={1, 4, -3},则结果为2....
分类:
编程语言 时间:
2014-05-08 16:00:33
阅读次数:
396
应用中的数据很少只是简单的key-value,常常他们是包含了日期,地理位置坐标,对象,数组等结构化的。想要把这些数据存储起来,如果使用行列式的关系型数据库,就好象把你制作好的结构化数据塞到一个excel表格中一样,这样做就得把你的数据重构造以符合数据表格的约束,当然从数据库中取出所需的数据还要反向...
分类:
其他好文 时间:
2014-05-08 15:34:46
阅读次数:
273
2.3当创建一个数组对象时, 实际上是创建了 引用数组。且每个引用 都自动被初始化为 nulljava
看到null,就知道这个引用还没有指向某个对象也可以创建用来存放基本数据类型的数组,同样,编译器也能确保这种数组的初始化,全部置零。2.3.2
作用域java对象 可以存活于作用域之外,对象不同于...
分类:
其他好文 时间:
2014-05-08 14:46:48
阅读次数:
243
在更新上面一道题的时候我就想,是不是还有一道打印路径的,果不其然啊。
这种题非常常见的,做法也很简单,我是用一个引用的vector来存,满足条件之后直接压入结果集中,当然也可以用数组之类的,都一样。用引用需要注意的问题就是递归进行到后面的时候会对栈中的上层状态产生影响,当然可以用传值的方法来避免这个问题,但是那样子开销太大了(每次船建和销毁一个类对象,不是明智的选择)。那么就是要回退,那什么时候...
分类:
其他好文 时间:
2014-05-08 11:03:31
阅读次数:
248