降龍

There is some good in this world,and it's worth fighting for!!!!

希尔(Shell)排序——改良的插入排序算法

希尔排序是插入排序中的一种,前面一篇文章(点击查看)中提到的插入排序算法准确的来说应该称为“直接插入排序算法”,而这里介绍的希尔排序算法是对直接插入排序算法改进之后形成的一种算法,该算法是由D.L Shell于1959年提出的,它也因此而得名,又称缩小增量排序算法。 基本思想

2011-10-14 19:27:56

阅读数:3799

评论数:0

几种基本的排序算法:选择排序、插入排序、冒泡排序

选择排序(Selection sort)、插入排序(Insertion sort)与冒泡排序(Bubble sort)這三个排序方式是初学排序所必须知道的三个基本排序方式,它们由于速度不快而不实用(时间复杂度都是O(n2)),然而它们排序的方式确实值得我们观察和探讨。 一、选择

2011-10-13 11:59:10

阅读数:8239

评论数:4

面试算法题(三)

题目: 给定一个函数rand5(),该函数可以随机生成1-5的整数,且生成概率一样。现要求使用该函数构造函数rand7(),使函数rand7()可以随机等概率的生成1-7的整数。 思路: 很多人的第一反应是利用rand5() + rand()%3来实现rand7()函数,这

2011-09-23 16:17:17

阅读数:1644

评论数:3

牛人的回字算法

<br />static void printbox(int num) { for (int i = 0; i < num * 2 - 1; i++) { for (int j = 0; j < num * 2 - 1; j++) ...

2011-04-23 11:16:00

阅读数:780

评论数:0

面试算法题总结(二)

<br />求子数组的最大和:<br />      输入一个整形数组,数组里有正数也有负数。数组中连续 的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。要求时间复杂度为O(n)。<br />   例如:输入的数组为1,-2...

2011-04-16 14:00:00

阅读数:665

评论数:0

面试算法题总结(一)

<br /><br />华为面试题:<br />    写一个程序, 要求功能:求出用1 ,2 ,5 这三个数不同个数组合的和为100 的组合个数。如:100 个1 是一个组合,5 个1 加19 个5 是一个组合。。。。 请用C++ 语...

2011-04-15 10:32:00

阅读数:730

评论数:0

面试算法题总结——引言

     昨天参加了淘宝的实习生招聘面试,由于自己没有好好准备,中间出现了好几次冷场,真是悲剧。。。。那个面试官应该也是技术人员,他问了我几个关于算法的问题,我勉强答了出来,但是我自己都感觉自己想出来的方法很笨,算法复杂度不够优。。。。估计这次面试要以悲剧收场了。。。。   面试过后,自己反思了一...

2011-04-15 10:21:00

阅读数:861

评论数:0

八大排序算法总结

插入排序1.直接插入排序原理:将数组分为无序区和有序区两个区,然后不断将无序区的第一个元素按大小顺序插入到有序区中去,最终将所有无序区元素都移动到有序区完成排序。要点:设立哨兵,作为临时存储和判断数组边界之用。实现:Void InsertSort(Node L[],int length){Int ...

2010-05-30 19:39:00

阅读数:510

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭