陳小貳的专栏

一直转载,从未原创。

堆排序的实现

自己写的,有问题请指出。 /** * @file BinaryHeap.hpp * @brief 二叉堆 *  * @author xiao2 joyjj0218@qq.com  * @version 1.0  * @date 2015.11.17  */ #ifndef BINARYHE...

2015-11-17 16:40:50

阅读数:163

评论数:0

一致性哈希算法

一致性哈希

2015-11-13 17:53:37

阅读数:361

评论数:0

字符串匹配的KMP算法

转载”阮一峰的网络日志“ 字符串匹配是计算机的基本任务之一。 举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"? 许多算法可以完成这个任务,Knuth-Morris-...

2015-11-13 16:24:33

阅读数:164

评论数:0

二叉树遍历

//输出 void Visit(BiTree T){     if(T->data != '#'){         printf("%c ",T->data);     } } //先序遍历 void PreOrder(BiTree T){    ...

2015-11-13 15:13:33

阅读数:152

评论数:0

二叉树遍历的前驱和后继

下面关于二叉树三种遍历方法的前驱和后继作讨论和总结。 一、前序遍历 1.1 找后继:     (1)若有左子女,则后继是左子女;   (2)若无左子女,有右子女,则后继是右子女;   (3)若既无左子女,又无右子女,则是一片叶子:     a.若是其父母的左子女,且父母有右子女,则后继是父母的右子...

2015-11-13 15:11:44

阅读数:290

评论数:0

旋转数组

问题定义:       给定一个数组data[]和一个数M,向右旋转M位,要求时间复杂度为O(n),空间复杂度为O(1),如,char data[]="abcde", M = 2,旋转以后data 应该为cdeab,如何高效的实现该功能? 这是一个非常经典的题目,第...

2015-09-04 12:18:18

阅读数:322

评论数:0

递归算法实例讲解

在数学与计算机科学中,递归是指在函数的定义中使用函数自身的方法。 递归算法是一种直接或者间接地调用自身算法的过程。在计算机编写程序中,递归算法对解决一大类问题是十分有效的,它往往使算法的描述简洁而且易于理解。 递归算法解决问题的特点: (1) 递归就是在过程或函数里调用自身。 (2) 在使...

2015-09-04 11:53:04

阅读数:351

评论数:0

一个经典编程面试题的“隐退”

面试程序员很困难。Jeff Atwood 抱怨找一个会写代码的候选人是如此艰难。在技术媒体发布的那些“最佳”面试题中,很少有能让我提起兴趣的——尽管我很喜欢IKEA的这个面试题。Codility和 Interview Street这样的创业公司从这个具有挑战性的课题中看到了机会。与此同时,Die...

2015-08-30 10:49:26

阅读数:315

评论数:0

一个十分有趣的字符串算法题目

在blogspot上看到一个十分有趣的字符串算法题目,作者讲述了自己面试google的一次经历。本文不理会这个故事,只来讨论一下里面着个有趣的算法。     算法题目:有两个字符串由不同的字母组成,一长一短,长的为A短的为B。设计一个算法,如果所有在B中出现的字符都在A中出现,则返回true...

2015-08-30 10:44:05

阅读数:761

评论数:0

插入排序

一、基本思想 通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应的位置并插入。 插入排序非常类似于整扑克牌。 在开始摸牌时,左手是空的,牌面朝下放在桌上。接着,一次从桌上摸起一张牌,并将它插入到左手一把牌中的正确位置上。为了找到这张牌的正确位置,要将它与手中已有的牌从...

2015-08-30 10:42:29

阅读数:373

评论数:0

快速排序

快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考研中也常常出现快速排序的身影。 总的说来,要直接默写出...

2015-08-30 10:28:59

阅读数:280

评论数:0

单链表逆序

很经典的“单链表逆序”问题。很多公司的面试题库中都有这道题,有的公司明确题目要求不能使用额外的节点存储空间,有的没有明确说明,但是如果面试者使用了额外的节点存储空间做中转,会得到一个比较低的分数。如何在不使用额外存储节点的情况下使一个单链表的所有节点逆序?我们先用迭代循环的思想来分析这个问题,链表...

2015-08-29 10:10:14

阅读数:286

评论数:0

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