//*************************************
// 函数名称:FineTab 二分查找算法 ->查温度表
// 函数功能:查找数据在表中对应的位置 表中数据从大到小
// 入口参数:表地址、表长度、要查找的数据
// 出口参数:无
// 返 回 值:数据在表中的位置
//***************************************/
int ...
分类:
其他好文 时间:
2014-06-05 03:00:34
阅读次数:
246
题目:输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”。
这里主要要分析两个方面:
1、如何判断那些字符是需要删除的字符。同很多字符串问题一样,可以开辟一个哈希数组,全部初始化为false,将第二个字符串中字符对应的映射位置置为ture,表示这些位置对应的字符在第一个字符串中需要删除。
2、关于删除字符的操作,每次删除一个,而后把后面的元素均左移一...
分类:
其他好文 时间:
2014-06-05 01:47:12
阅读次数:
196
处理字符串中重复或者次数出现等问题,最常用的就是哈希表,用字符串中的字符作为key,字符出现次数作为value,假定只有ASCII码范围内的字符,则可以开辟一个256大小的int数组,将每个字符(key)映射到该数组的对应位置上,计算每次出现的次数即可,遍历一次字符串,计算每个字符出现的次数,保存在int数组的对应位置上,第二次遍历字符串,若第一次出现某个字符对对应到的哈希表的对应位置处的元素为1,则该字符便是第一个只出现一次的字符,如果我们是遍历哈希表(int数组),则找到的哈希表中的第一个元素为1的位置...
分类:
其他好文 时间:
2014-06-05 01:21:30
阅读次数:
294
浅谈Java中的hashcode方法
哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率。在Java的Object类中有一个方法:
public native int hashCode();
根据这个方法的声明可知,该方法返回一个int类型的数值,并且是本地方法,因此在Object类中并没有给出具体的实现。
为何Object类需要这样一...
分类:
编程语言 时间:
2014-06-04 22:53:34
阅读次数:
565
题目来源:Light OJ 1102 Problem Makes Problem
题意:一个整数n分解成k个数相加有多少种方案 数字可以重复
思路:m个苹果放n个盒子有多少方案 允许盒子有空 盒子空对应0 答案是C(n+m-1, n-1)
首先如果不允许有空 答案是C(m-1, n) 插空法m个苹果有m-1个空档 在这m-1个空档里选n-1个分成了n部分 每部分都不是空的
现在允许为空...
分类:
其他好文 时间:
2014-06-04 21:57:03
阅读次数:
166
22.Set接口的实现类:Set接口存放的元素是无序的且不包括反复元素。1>实现类HashSet:HashSet类依据元素的哈希码进行存放,取出时也能够依据哈希码高速找到。HashSet不保存元素的加入的顺序。样例:
import java.util.HashSet; import java.uti...
分类:
编程语言 时间:
2014-06-02 17:37:34
阅读次数:
289
九度上把这道题目改成了一副扑克牌有4张大小王,这里姑且不管它最多几个0,就题目来说,不严谨,很含糊,比如这里没有对顺子给出比较严谨的定义,5个以下的连续数字算是顺子吗?现实中要至少5个才算顺子的,而且如果假设3个牌也算顺子,那如果输入的是3个0呢,这有点太牵强了!看论坛里面好多人吐槽。总之,不管那么多,这道题目无论它怎么坑爹,用剑指offer上的思路写的代码AC是没问题的,因为这里不管你0有多少个(只要不大于数组的长度就可)都OK。
我之前想避开排序,或者开辟哈希数组,就遍历一遍求出最大值,最小值,...
分类:
其他好文 时间:
2014-06-01 15:27:38
阅读次数:
261
课程介绍
这门课程核心内容是算法和数据结构。
具体的算法和数据结构如下:
数据类型:堆栈、队列、背包、并查集、优先队列。
排序:快排、并排、堆排、基数排序
查找:BST、红黑BST、哈希表
图:BFS、DFS、Prim、Kruskai、Dijkstra
字符串:KMP、正则、TST、哈夫曼、LZW
高级:B树、后缀数组、最...
分类:
其他好文 时间:
2014-06-01 10:52:26
阅读次数:
285
哈希表的链地址法来解决冲突问题将所有关键字为同义词的记录存储在同一个线性链表中,假设某哈希函数产生的哈希地址在区间[0, m -
1]上,则设立一个至振兴向量Chain ChainHash[m];数据结构//链表结点typedef struct _tagNode{ int data;
...
分类:
其他好文 时间:
2014-05-31 19:23:52
阅读次数:
436