![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 80
littleway
这个作者很懒,什么都没留下…
展开
-
和链表有关的算法题(C++)
链表操作在面试中经常出现,这一方面考察了对指针的使用,以下整理了一些关于链表的面试题以及注意事项。首先对单链表进行定义。struct ListNode{ int val; ListNode *next;};问题1:输入一个单向链表,输出该链表中倒数第k个结点先第一个指针向前走k,然后第二个指针此时和第一个指针一起走即可。情况:pHead=NULL、链表小于原创 2014-02-19 16:25:31 · 730 阅读 · 0 评论 -
递归总结
最近看到递归,觉得真是种很神奇的想法,但是很直观,也很重要。首先总结一下递归的思想。递归的优势来源于它的逻辑简单易读,而不是来自于它的运算速度,它的基本思想即对输入的参数是否为”特殊情况“(最小规模或者错误情况)进行判断,若是则返回,否则缩小规模,也就是缩小范围,进入下一个递归函数。如汉诺塔问题:现在有三根相邻的柱子,标号为A,B,C,A柱子上从下到上按金字塔状叠放着n个不同大小的原创 2013-04-10 18:47:06 · 666 阅读 · 0 评论 -
非递归的二叉树遍历
http://www.cnblogs.com/dolphin0520/archive/2011/08/25/2153720.html原创 2014-03-08 21:13:26 · 458 阅读 · 0 评论 -
leetcode之穷举优化法
Container with Most Water原创 2014-04-27 22:36:34 · 1132 阅读 · 0 评论 -
回溯算法详解
回溯算法的基本思想是:从一条路往前走,能进则进,不能进则退回来,换一条路再试。原创 2014-04-30 16:43:37 · 4073 阅读 · 0 评论 -
O(lgn)的三种排序,快速排序、归并排序、堆排序
daimafusvoid swap(int *vec, int i, int j){ int tmp = vec[i]; vec[i] = vec[j]; vec[j] = tmp;}void quicksort(int *vec, int beg, int end){ if(beg < end) { //每次都取最后一位数当比较数; int num原创 2014-05-15 20:35:22 · 635 阅读 · 0 评论 -
map和hash_map的比较
map和hash_maphash_map 查找速度会比map快,而且查找速度基本和数据数据量大小,属于常数级别;而map的查找速度是log(n)级别。并不一定常数就比log(n)小,hash还有hash函数的耗时,明白了吧,如果你考虑效率,特别是在元素达到一定数量级时,考虑考虑hash_map。但若你对内存使用特别严格,希望程序尽可能少消耗内存,那么一定要小心,hash转载 2014-05-17 16:13:52 · 549 阅读 · 0 评论 -
DM知识点复习
SVM是一种二类分类模型,其基本模型定义为特征空间上的间隔最大的线性分类器,即支持向量机的学习策略便是间隔最大化,最终可转化为一个凸二次规划问题的求解。原创 2014-04-28 22:40:55 · 658 阅读 · 0 评论 -
二分查找中的编程小问题
二分查找是很常用的一个小技巧,思想很简单,dansh原创 2014-05-08 12:25:09 · 713 阅读 · 0 评论