- 博客(6)
- 资源 (2)
- 收藏
- 关注
原创 插入排序增强版
我们指定,排序算法按照其稳定性来说,分为非稳定性排序与稳定性排序算法。判断稳定性与非稳定性算法的依据一般在是否为相邻元素之间的数据交换,不然一般为非稳定排序。比如快速排序,Shell排序等都不是稳定排序,而像冒泡排序,插入排序,合并排序等都是稳定排序。C语言库函数中的qsort函数是基于快速排序的,因此排序之后,未参加排序的数据之间的顺序可能被打乱。又是我们又需要在某一类场景下利用到稳定排序算法。
2015-05-31 09:17:57 562
原创 Hash函数经典用法
撰写这篇文章之前,先牢骚几句。程序员除了数据结构与算法,什么也不属于自己---记得哪个NB人物曾经说过这样的话。的确,程序员水平高低如何,很大程度上取决于基本功是否扎实。高级程序员与普通码农的区别在我看来就是对这些基础知识是否做到了运用自如。许多程序员开发程序也是简单地调用已有系统库,或者第三方组件,写写简单的hello world或者if...else之类的程序,这样下去其个人竞争优势逐渐散失,
2015-05-28 22:11:45 14240 1
原创 字符串中删除特定的字符
1. 在字符串中删除特定的字符(字符串)。输入两个字符串,从第一字符串中删除第二个字符串中所有字符例如,输入"They are students." 和 "aeiou"。则删除之后的第一个字符串变成 "Thy r stdnts."#include #include #include //trimString函数//inputString:输入字符串//pattern:待删
2015-05-13 22:28:57 1872
原创 二元多项式同类项合并问题
编码习惯一定要养成好!编码过程中如果使用了全局变量的,在函数过程调用完了之后,切记一定要记得清零,不然可能会有想不到的异常! 测试用例最少要准备2个以上case,以防单个Case无法预料的问题。下面来一道多项式问题合并问题。有很多方法,来一种最为普通的做法,直接用大数组解决:#include #include #include #include using namespace std;
2015-05-07 00:36:26 967
原创 单链表归并排序
数组排序常见的有十几种排序算法,然而对于单链表来说,链表缺乏随机访问特点,导致一些排序算法在时间和空间复杂度上都比较负责,一般的冒泡排序与插入排序,其时间复杂度都是O(N^2)。链表中最优的排序算法应该为归并排序,归并排序是分治法的典型应用,主要思想是将一个大问题划分为N(一般取2)个等价的子问题,通过对子问题的解答来达到对原有问题的解决。下面对链表的归并排序用代码实现。归并排序思想可以参考数组归
2015-05-04 21:56:40 4786
原创 Linux 平台源代码阅读器understand
Windows平台上,source insight是阅读源代码最佳工具之一,然而到了Linux平台上,很难找到与之抗衡的工具,有人说用VIM+Ctags+CScope,不过还是不太爽!找到了一款跨平台的源代码阅读工具understand,该工具基于QT开发(基本上Linux上GUI软件都是用Qt开发,当然也有很少一部分用的GTK开发)。解压缩之后直接将所有文件拷贝到/opt目录下,在/usr/sh
2015-05-02 08:40:20 5222 1
larbin源代码下载
2011-05-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人