简单算法
小王不是胖虎
多读书多看报,少吃零食多睡觉
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【小王的算法练习】LeetCode: 20.有效的括号
【简单】 LeetCode: 20.有效的括号今天刷了一个 LeetCode 题目,就是简单的括号匹配题目,之前用数组做过一次,这次用栈来做一下。体会一下栈的使用方法。首先我们要知道栈的特征:后进先出,我个人喜欢把它比作一个只有一边开口的玻璃管。因为只有一端开口,所以每次从玻璃管内取东西都要取出最靠近管口的那个。我们来看一下题目:我们可以看到,这个题目的描述有点符合我们刚才所说的栈...原创 2019-06-12 16:22:43 · 210 阅读 · 0 评论 -
【剑指offer题目4】二维数组优化查找数字
二维数组优化查找数字1.题目描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成这样一个函数,输入这样的一个二维数组和一个整数,判断数组中是否包含该整数。2.问题分析从右上角开始比较,然后逐渐缩小查找范围。如下图所示:代码如下:public static boolean select(int [][] a,int number) {...原创 2019-07-19 18:39:24 · 232 阅读 · 0 评论 -
【剑指offer面试题8】二叉树的下一个节点
二叉树的下一个节点一.题目要求:给定一棵二叉树和其中一个节点,如何找出中序遍历的下一个节点?树的节点除了分别有指向左右节点的指针外,还有一个指向父节点的指针。二.栽树public class BinaryTreeNode { char value; BinaryTreeNode fatherNode; BinaryTreeNode leftNode; BinaryTreeNode...原创 2019-08-02 18:16:26 · 258 阅读 · 0 评论 -
【剑指offer题目5】优化替换空格
优化替换空格1.题目描述:请实现一个函数,把字符串中的每一个空格替换成“%20”。例如,输入“ we are happy”,则输出”we20%are20%happy“。2.问题分析:普通的解法:扫描这个字符串碰到空格以后将后面的字符串向后移三个单位长度,然后填入所要求的“20%”。空间复杂度为O(n^2)**优化解法:**先扫描这个字符串,数出其中空格的个数,然后算出最后应该的字符串的长...原创 2019-07-31 10:40:21 · 156 阅读 · 0 评论 -
【剑指offer题目3】数组中重复的数字
数组中重复的数字1.题目描述:在一个长度为n的数组里的所有数字都在0~n-1的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了L次。请找出数组中任意一个重复的数字。例如,如果输入长度为7的数且2, 3, 1, 0, 2, 5, 3,那么对应的输出是重复的数字2或者32.问题分析:优化思路: 让每个数字出现在对应的下标处,当后面的数字与前面的相同下标的数字相同...原创 2019-07-31 11:12:02 · 164 阅读 · 0 评论 -
【剑指offer面试题9】用两个栈实现队列和用两个队列实现栈
用两个栈实现队列关键想法:插入时: 只向栈1顶部插入删除时:如果栈2内有元素,就优先弹出栈2的栈顶元素;否则将栈1内元素依次出栈压入栈2,然后再弹出栈2的栈顶元素实例代码:public class Test9{ Stack<Character> stack1; Stack<Character> stack2; public Test9() { //...原创 2019-08-04 18:41:41 · 273 阅读 · 0 评论 -
【剑指offer题目6】从尾到头打印链表
从尾到头打印链表1.题目要求:输入一个链表的头结点后,从尾到头反过来打印出每个节点的值。2.问题分析:这个问题我们分为两点:要有一个定义好的链表要给链表逆序输出3.开始干3.1定义链表public class ListNode { public String value; public ListNode next; public ListNode(String d...原创 2019-07-31 17:59:28 · 237 阅读 · 0 评论 -
【剑指offer7】重建二叉树
重建二叉树一.构造二叉树数原创 2019-08-01 18:46:58 · 199 阅读 · 0 评论
分享