2016年12月3日

摘要: 两个排好序的数组, A有m个数, 长度够长, B有n个数, 长度为n, 将B放到A里, 不用buffer数组(临时数组), 就用A将两个合在一起, 同时排好序。 方法: 从右边将两个数组里最大的数取出放入A的m+n-1的index处, 从右往左放, 两指针i和j, 直到i和j都等于-1. 注意:时间 阅读全文
posted @ 2016-12-03 16:08 LittleAlex 阅读(104) 评论(0) 推荐(0)

2016年9月1日

摘要: Validate BST是指按中序遍历niorder后左<node<右; 第一种方法: 先按inoreder遍历, 再放进ArrayList里用循环看是不是从小到大排序; 注意: 设置成员变量list时,如果先new作ArrayList, 则在main函数里每次用都得new个新的class对象; 如 阅读全文
posted @ 2016-09-01 02:43 LittleAlex 阅读(200) 评论(0) 推荐(0)

2016年8月29日

摘要: Binary Tree: 0到2个子节点; Binary Search Tree: 所有左边的子节点 < node自身 < 所有右边的子节点; 1. Full类型: 除最下面一层外, 每一层都有两个子节点; 2. Complete类型: 除最下面一层外为Full类型, 但是最下面一层最所有子节点靠左 阅读全文
posted @ 2016-08-29 06:16 LittleAlex 阅读(183) 评论(0) 推荐(0)

2016年8月21日

摘要: 用两个stack, 第一个按顺序放所有值,第二个只放当前最小值。 注意: 1. 最小值有多个则都放到两个stack里, 尤其别忘放第二个; 2. pop时若两个stack的最上面值相等则都pop, 不等则只pop第一个stack, 但是都得返回第一个stack的pop值; 3. min时只返回第二个 阅读全文
posted @ 2016-08-21 15:30 LittleAlex 阅读(158) 评论(0) 推荐(0)
 
摘要: 1. stack(先进后出): pop 拿出并返回最后值; peek 返回最后值; push 加入新值在后面并返回此值。 2. queue(先进先出) : poll = remove 拿出并返第一个值; element = peek 返第一个值; add = offer 加入新值在后面并返回true 阅读全文
posted @ 2016-08-21 14:01 LittleAlex 阅读(155) 评论(0) 推荐(0)

2016年5月25日

摘要: 1. 数组numbers == null 及numbers.length == 0, 而不是用numbers[] 2. HashMap<Integer, Integer>而不是<int, int> 3. 先找有没有余数, 没有则将自身加入到哈希表里, 有的话直接返回自身的位置和余数的位置(如果先找有 阅读全文
posted @ 2016-05-25 14:52 LittleAlex 阅读(141) 评论(0) 推荐(0)
 
摘要: (记得import java.util.HashMap及Arrays, 首先字符串若为空或者数量为零, 则返回一个空的LinkedList) 1. 把string变为char数组, 再进行排序, 之后重新合为一个string叫mark 2. 建循环, 若hashmap(map)没有mark这个key 阅读全文
posted @ 2016-05-25 01:25 LittleAlex 阅读(216) 评论(0) 推荐(0)
 
摘要: 1. 把string变为char数组 2. 排序Arrays.sort() 阅读全文
posted @ 2016-05-25 00:59 LittleAlex 阅读(119) 评论(0) 推荐(0)

2016年5月14日

摘要: 1. 讨论目标字符串若为空, 则返回-1; 资源字符串若为空, 则返回-1。 2.讨论目标字符串个数为零, 则返回0; 资源字符串个数为零, 则返回-1。 3. 插入旗帜来使第二循环的结束为有条件地返回(为true才返回, 为false则break跳到上循环继续)。 阅读全文
posted @ 2016-05-14 07:29 LittleAlex 阅读(221) 评论(0) 推荐(0)
 
摘要: 1. 画图, 直观。 2. 讨论数组为空或者个数为零。 3. 讨论首尾, 若为翻转过的则进行查找直到最后两个数进行比较, 取小者。 阅读全文
posted @ 2016-05-14 07:20 LittleAlex 阅读(103) 评论(0) 推荐(0)