
算法小题目
文章平均质量分 71
王小文Ben
这个作者很懒,什么都没留下…
展开
-
几种统计整数二进制表示中1的个数(算法小学习)
这是一个很有意思的问题,是在面试中特别容易被问到的问题之一,这个问题有一个正式的名字叫 Hamming weight。解决这个问题第一想法肯定是一位一位的去判断,是1计数器+1,否则不操作,跳到下一位,十分容易,编程初学者就可以做得到!于是很容易得到这样的程序:int Sum1ByBin(int num){ int sum = 0; while (num) {原创 2014-01-26 15:23:30 · 1238 阅读 · 0 评论 -
实现一个比较高级的字符匹配算法,即一串很长的字符,要求找到符合要求字符的字符串
今天开始我偶尔也写一点面试题原创 2014-01-18 01:30:42 · 2728 阅读 · 0 评论 -
排序之希尔排序
希尔排序算法是插入排序到二分插入排序后又一个进阶的算法。它通过比较相近一定间隔的元素来共组,各趟比较所用的距离随着算法的进行而缩小,直到之比较相邻蒜素的最后一趟时结束。所以希尔排序也叫做缩小增量排序算法。 首先,希尔排序利用了一个增量序列,这个序列是一个递减的序列!如何设置这个序列根据待排序的序列的容量大小而定。所以希尔排序算法的效率和这个增量序列的质量有关系!这里假设这个原创 2014-02-01 23:50:28 · 1080 阅读 · 0 评论 -
排序之二分插入排序
作为一个稳定的排序算法, 插入排序很重要,大多数程序员都可以很轻松的写出插入排序!先看一下插入排序的代码:void sort_insert(int a[],int n){ int i,j; i=1; while(i<n) { int x = a[i]; j=i-1; while(j>=0 && a[j]>x) { a[j+1]=a[j];原创 2014-01-31 21:44:38 · 4577 阅读 · 0 评论