摘要: 前一段看了很多的红黑树的文章,终于对红黑树算是有了简单的理解,今天趁着可以清闲的时间抓紧写一下,文章里面的图是我先在纸上画的,然后又用visio画了一遍,我的介绍中可能还会有错误,欢迎纠正和分享经验。 一、下面先简单介绍一下红黑树: 红黑树是一棵自平衡的二叉搜索树,他具备二叉搜索树的所有性质,同时由 阅读全文
posted @ 2016-03-08 15:49 代码的搬运工 阅读(378) 评论(0) 推荐(0)
摘要: 最近一直在看红黑树的相关文章,但是还是有一些地方没有研究的特别透彻,等我研究明白了应该会写一篇关于红黑树的博客,由于红黑树是一种自平衡的二叉搜索树的结构,所以先翻出很久以前自己写的一个链式的二叉搜索树的接口,为下一篇红黑树的文章做铺垫。 代码如下: 代码我写的注释比较少,而且是之前用windows下 阅读全文
posted @ 2016-03-01 09:57 代码的搬运工 阅读(284) 评论(0) 推荐(0)
摘要: 放假回家好久没写代码了 题目描述 实现一个算法,确定一个字符串的所有字符是否全都不同。这里我们要求不允许使用额外的存储结构。 给定一个string iniString,请返回一个bool值,True代表所有字符全都不同,False代表存在相同的字符。 保证字符串中的字符为ASCII字符。字符串的长度 阅读全文
posted @ 2016-02-23 11:28 代码的搬运工 阅读(313) 评论(0) 推荐(0)
摘要: 脚本语言可以减少很多手动的操作,作为一个Linux程序员都应该了解简单的脚本编写来代替手动的操作,我也是很久以前学习过一段shell脚本程序编写,大概有一年多没有写过了,现在只记得一些基础的语法。 先说说我的需求,我写了一个循环队列的接口,然后写了一个测试程序来测试循环队列,现在我想让这个测试程序执 阅读全文
posted @ 2016-01-20 18:18 代码的搬运工 阅读(1302) 评论(0) 推荐(0)
摘要: 最近一直在看《编程珠玑》第二版这一本书,里面的东西真的很实用,以前也看过不少讲解快排的书,但是在编程珠玑上看到的讲解是我见过最好理解,也是最详细的,从效率和空间以及实现等各个方面都做了详细说明,并比较了几种变形的快排的效率,所以在这把我看到的内容写出来记录,留着以后忘了的时候看。 1.1.插入排序 阅读全文
posted @ 2016-01-15 18:22 代码的搬运工 阅读(774) 评论(0) 推荐(0)
摘要: 自己实现了一个IP trie树接口. 在这里保存一下,方便备份以后使用,同时欢迎纠错和交流,希望有大神能指教更高效的算法. 1.头文件如下(iptrie.h) 2.c文件如下(iptrie.c) 3.main.c如下(测试程序) 4.Makefile (linux下编译) 阅读全文
posted @ 2016-01-14 16:20 代码的搬运工 阅读(566) 评论(0) 推荐(0)
摘要: 问题描述: 这是她的项目里的一个需求好像要做什么聚类的,但是我不太懂,只是用我的思路解决了问题... 输入: 一个字符串数组,数组中的每个字符串的格式为A B,AB中间有一个空格,A和B是源IP和目的IP. 输出: 输出所有的A B B C C D形式的串,即数组中的字符串的后半部分和另一个字符串的 阅读全文
posted @ 2015-12-18 11:00 代码的搬运工 阅读(1363) 评论(0) 推荐(0)
摘要: 注:树的深度优先遍历就是二叉树的先序遍历.(我写的深度优先遍历可能有点奇怪,不是按照那种一次遍历到左子树的结点那种方式写的) 下面是我用java实现的代码. 阅读全文
posted @ 2015-12-17 19:28 代码的搬运工 阅读(682) 评论(0) 推荐(0)
摘要: 如题: 递归函数往往可以简化我们的代码,尤其是对树的遍历和利用回溯算法写代码的时候,但是递归函数的返回值往往是困扰我们的。 总体来说,我们先要理解函数的调用过程,函数调用过程会用栈来保存函数的返回值和过程,而递归函数就是调用自身函数的过程,所以也是用栈存储,这样就比较容易理解了。 下面一段代码可以帮 阅读全文
posted @ 2015-12-16 20:28 代码的搬运工 阅读(20179) 评论(1) 推荐(1)
摘要: 题目描述 在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是重复的数字2或者3。 1 /* 2 *思路: 阅读全文
posted @ 2015-12-06 20:34 代码的搬运工 阅读(819) 评论(0) 推荐(0)