自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Lemon

Something is better than nothing.

  • 博客(7)
  • 收藏
  • 关注

原创 桶排序和基数排序

(快速总结了桶排序和基数排序,由于近期项目比较忙,很多地方没有考虑完整,日后有空再回来修改)桶排序:将数组分配到有限数量的桶子里,每个桶子再个别排序。下列中:将数据作为桶(数组)的下标存储,适合于数据值的范围比较小;比如:求在1G大小的字符串中,出现次数最多的那个字符;因为字符char的边界是[0...255],就可以将所有的字符遍历、存储到[0...255]桶中(数组下标).

2016-02-29 14:05:12 1663

原创 归并排序

归并排序就是将数组不断的分解(这里是二分),直到分解为独立的数据单元,再回溯、两两比较、排序,最终得到有序的数组。对数据的左右二分、合并的过程可以理解成为一个“后序遍历”。例如:以下代码参考自:白话经典算法系列之五 归并排序的实现;原文写的很好,但我稍作了改动,便于理解。不想多说什么,代码有详细注释,我想关键点是:递归二分、合并的“后序遍历”方法的理解。#inclu

2016-02-26 09:01:21 629

原创 选择排序与堆排序

选择排序 依次选择数组中的最小值(从小到大),并按顺序排放。从第一个数开始,依次遍历数组中的数据,找出最小值,并与第一个数交换位置;从第二个数开始,依次遍历(剩余)数组中的数据,找出最小值,并与第二个数交换位置;... ...堆排序堆的概念:在一颗完全二叉树中,子结点的值总是小于父结点的值(大根堆),或者子结点的值总是大于父结点的值(小根堆)。我想,堆排序之所以也属

2016-02-24 15:18:17 643

原创 插入排序与希尔排序

插入排序就像打“斗地主”一样,手中的牌按大小顺序排列,当新拿到一张牌,插入手中合适的位置。对于数组的插入排序,在新数据插入到合适位置之前,必须给该数据腾出空间(需要对大于该数据的原数据进行移位)。插入排序的原理相对较简单,插入排序对于有序的序列效率很高,详见下面代码。希尔排序是插入排序的加强版,希尔排序增加了一个“步长”(也有的叫增量),既将现有的数据按照一定的步长分组,对该组内的数据

2016-02-23 09:26:41 607

原创 《程序员的思维修炼》读后感

有的书,读完就忘了;而一本好书,读后让人回味无穷,《程序员的思维修炼》就是这样一本书。        《程序员的思维修炼》中很多概念让人耳目一新,让我产生一些新的认知;《程序员的思维修炼》让我不断的去反思、不断冲击我的陈旧的“习惯思维”城防,促使让我去改变,尝试新的事物,也会加固已有的好的思维习惯。        《程序员的思维修炼》中的许多道理都是日常听说过或是已经做到的,通过阅读,让我

2016-02-22 09:52:31 1299

原创 《把时间当作朋友》摘抄

看了《把时间当作朋友》,觉得很多观点都是值得我去思考和实践的,摘抄一部分自己喜欢的,有空慢慢体会。方法:1. 如果你已经习惯每天晚上睡觉之前记录以下当日的时间开销,那么,第二天早上就会很自然地开始在脑子里规划全天的时间了--不信你就试试看!2. 所有的人获取知识的最为基础的手段就是通过“体验”。比“体验”再高级一点的获取知识的手段,就是“试错”(Trial and error)。然

2016-02-04 11:10:16 1770

原创 理解“红黑树”

(本文主要参考与网络上一些文章加上自己的理解,代码来自JULY http://blog.csdn.net/v_JULY_v/article/details/6169600 )在真正理解红黑树之前,我觉得它是一座难以翻越的大山;当我有点理解了它,如释重负。看红黑树之前,我看了AVL树,觉得还是比较好理解,对于红黑树,我曾经有一些疑问:1.为什么要用红黑来标记?2.红黑结点如何做到

2016-02-02 10:13:29 787 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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