数据结构与算法-栈
MrYu1025
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
排序算法时间复杂度分析
排序算法 时间复杂度(平均) 最差情况 最好情况 空间复杂度 冒泡排序 O(n2) O(n2) O(n) O(1) 选择排序 O(n2) O(n2) O(n2) O(1) 插入排序 O(n2) O(n2) O(n) O(1) 快速排序 O(nlogn) O(n2) O(nlogn) O(nlogn) 堆原创 2017-10-19 15:01:19 · 395 阅读 · 0 评论 -
Java 8中HashMap源码解析
HashMap是Java和Android程序员的基本功, JDK1.8对HashMap进行了优化, 你真正理解它了吗? 考虑如下问题: 1、哈希基本原理?(答:散列表、hash碰撞、链表、红黑树) 2、hashmap查询的时间复杂度, 影响因素和原理? (答:最好O(1),最差O(n), 如果是红黑O(logn)) 3、resize如何实现的, 记住已经没有rehash了!!!(答:拉链e原创 2017-10-19 17:17:46 · 254 阅读 · 0 评论 -
Java 7中HashMap源码解析
package java.util; import java.io.*; public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable { // 系统默认初始容量,必须是2的n次幂,这是出于优化考虑的转载 2017-10-19 17:36:24 · 341 阅读 · 0 评论 -
设计一个具有getMin()功能的栈
设计一个具有getMin()功能的栈: 1.push、pop、getMin()时间复杂度为O(1) 2.设计栈时可以使用现有的栈结构/** * 设计一个具有getMin()功能的栈: * 1.pop,push,getMin()时间复杂度为O(1) * 2.设计的栈可以使用现有的栈结构 * @author Nemo * */public class StackDemo { pr原创 2017-11-02 16:48:12 · 407 阅读 · 0 评论 -
两个栈实现一个队列
编写一个类,要求两个栈实现一个队列,并且重写add、poll、peek/** * 编写一个类,要求两个栈实现一个队列,并且重写add、poll、peek * @author yyq * */public class StackQueueDemo { private Stack<Integer> stackPush = new Stack<>(); private Stack原创 2017-11-02 17:04:08 · 207 阅读 · 0 评论 -
用递归函数将栈倒序
/** * 将倒序并且移除最后一个元素 * @author yyq * */public class StackOrderDemo { public Integer getAndRemoveLastElement(Stack<Integer> stack){ if(stack.isEmpty()){ throw new RuntimeExcepti原创 2017-11-02 17:14:12 · 303 阅读 · 0 评论 -
用一个栈实现另一个栈的排序
/** * 用一个栈实现另一个栈的排序 * @author yyq * */public class StackSortDemo { public void sortStackByStack(Stack<Integer> stack){ Stack<Integer> help = new Stack<>(); if(stack.isEmpty()){原创 2017-11-02 17:22:06 · 195 阅读 · 0 评论
分享