二分法查找的实现(递归&循环)
include "stdafx.h" ////////////////////////////////////////// //二分查找 // //Author:Kimimaro // //Date:2010 3 28 //...
Tag
Imported from Ghost backup.
include "stdafx.h" ////////////////////////////////////////// //二分查找 // //Author:Kimimaro // //Date:2010 3 28 //...
只是为了自己学习留作记录,需要的朋友可以看看。 修改日志: version1.1:2011 3 26 1.在尾插法中增加p next = NULL;2.将类似于p==NULL改为NULL==p(示范性改正,没有全改);...
移位运算先转化成2进制,再根据运算符指定的位数作以为运算。 左移运算符(<<):逻辑/ <! more 算数移位。在不考虑溢出的情况下,相当于乘2,移位时移出的位数全部丢弃,右侧补入的数全部是0;左移时要注意有符号数的溢出情况。 右移运算符(...
 有符号定点数用首位0表示正,1表示负,正数与负数的补码求法不同。 <! more 正数的原码,反码,补码相同(这条要首先牢记,之后才能记住负数反码,补码的求法); 负数的反码是除原码符号为外按位求反,负数的补码是对原码按位求反之后加1。...
转之前的博客,这两种算法懒得再写一遍了。: ) 在学ruby,正好顺便把排序算法都复习一遍,先来看直接插入排序(insertion sort) 和 希尔排序 (shell sort)。 直接插入排序比较简单,直接上Ruby代码:( 算法渐进时间复杂度 O(n2) )...
最近在刷LeetCode,顺便把之前不会、掌握的不熟练的算法都看一遍,今天要说的是堆排序。 堆排序 堆排序是利用堆(大顶堆或小顶堆都可)的性质,每次从堆顶取一个元素,然后对堆重新调整,最后完成排序的排序算法, 时间复杂度 和快速排序、归并排序一样都是O(n log...
最近在刷LeetCode,顺便把之前不会、掌握的不熟练的算法都看一遍,今天要说的是快速排序。 快速排序 快速排序是通常比其他 基于比较的排序算法 效率更高,效率最好体现在大部分情况下都能达到O(nlogn)的时间复杂度。 快排的算法实现利用到了分治法(Divide and...
最近在刷LeetCode,顺便把之前不会、掌握的不熟练的算法都看一遍,今天要说的是归并排序。 首先说明一下算法的实现环境: 1. 算法实现:递归实现和迭代实现两种 2. 算法语言:Ruby 3. 数据结构:数组 归并排序的基本思路...