白话经典算法系列之六 快速排序 快速搞定
摘要:快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采 用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考 试如软考,考研中也常常出现快速排序的身影。总的说来,要直接默写出快速排...
阅读全文
posted @
2015-05-25 15:34
Stephen_init
阅读(173)
推荐(0)
转:字符串的全排列和组合算法
摘要:全排列在笔试面试中很热门,因为它难度适中,既可 以考察递归实现,又能进一步考察非递归的实现,便于区分出考生的水平。所以在百度和迅雷的校园招聘以及程序员和软件设计师的考试中都考到了,因此本文对全 排列作下总结帮助大家更好的学习和理解。对本文有任何补充之处,欢迎大家指出。首先来看看题目是如何要求的(百度...
阅读全文
posted @
2015-03-13 16:48
Stephen_init
阅读(195)
推荐(0)
转:动态规划
摘要:终于来到了算法设计思想中最有趣的这部分,在去年的google笔试中,7道算法设计题有2道动态规划(Dynamic Programming)。看了这么久的算法,这部分也是唯一感觉到了比较难的地方,从这篇文章开始,将花连续的篇幅来讨论一些对动态规划的认识和其中的问题。这包括一些例子:计算二项式系数,Wa...
阅读全文
posted @
2015-03-05 13:59
Stephen_init
阅读(253)
推荐(0)
背包问题-C语言实现
摘要:转自:http://blog.csdn.net/tjyyyangyi/article/details/79296650-1背包问题参考:http://blog.csdn.net/liwenjia1981/article/details/5725579http://blog.csdn.net/dape...
阅读全文
posted @
2015-03-04 13:50
Stephen_init
阅读(4311)
推荐(0)
二叉树遍历
摘要:二叉树的非递归遍历 二叉树是一种非常重要的数据结构,很多其它数据结构都是基于二叉树的基础演变而来的。对于二叉树,有前序、中序以及后序三种遍历方法。因为树的定义本身就 是递归定义,因此采用递归的方法去实现树的三种遍历不仅容易理解而且代码很简洁。而对于树的遍历若采用非递归的方法,就要采用栈去模拟实现。在...
阅读全文
posted @
2015-02-09 15:07
Stephen_init
阅读(207)
推荐(0)
汉诺塔问题递归算法分析
摘要:汉诺塔问题递归算法分析: 一个庙里有三个柱子,第一个有64个盘子,从上往下盘子越来越大。要求庙里的老和尚把这64个盘子全部移动到第三个柱子上。移动的时候始终只能小盘子压着大盘子。而且每次只能移动一个。 1、此时老和尚(后面我们叫他第一个和尚)觉得很难,所以他想:要是有一个人能把前63个盘子先移动...
阅读全文
posted @
2015-02-06 22:37
Stephen_init
阅读(340)
推荐(0)
转:二叉树的深度优先遍历和广度优先遍历
摘要:转自:http://www.blogjava.net/fancydeepin/archive/2013/02/03/395073.html深度优先搜索算法(Depth First Search),是搜索算法的一种。是沿着树的深度遍历树的节点,尽可能深的搜索树的分支。当节点v的所有边都己被探寻过,搜索...
阅读全文
posted @
2015-01-30 15:59
Stephen_init
阅读(261)
推荐(0)
可视化对比排序算法
摘要:本文由 伯乐在线 - smilesisi 翻译自 Kanasz Robert。未经许可,禁止转载!欢迎加入:技术翻译小组,或分享原创到伯乐头条。在这篇文章中,我会向大家展示一些排序算法的可视化过程。我还写了一个工具,大家可对比查看某两种排序算法。下载源码 – 75.7 KB下载示例 – 27.1 K...
阅读全文
posted @
2014-07-30 07:11
Stephen_init
阅读(399)
推荐(1)