
栈
StephenZhen
细心,努力,认真,拼搏
展开
-
碎知识
巧用数组坐标双指针位运算,异或取余设置哨兵swap用加法或者异或的方法空位置赋值或者查看用 cur==null? null:cur;StringBuffer的length是根据当前字符串的长度来确定,并非预先设置空间。题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。斗牛场思想,过半人数,最后肯定那一个人是活着并且他们人.原创 2020-05-12 16:49:21 · 129 阅读 · 0 评论 -
栈知识-包含min函数的栈-栈的压入与弹出
1)取最大值,最小值min()可以用min = min > node? node:min;代替2)swap the number可以用+/-或者异或等具有可逆性质的符号来操作,省去了中间变量。包含min函数的栈1)常规做法采用另外一个stack_min来记录最小值,当栈顶元素与stack_min栈顶元素相同时候,一起弹出。最后取stack_min的peek()函数便是最小值。2)采用一个stack来维护的方法:import java.util.Stack;public class原创 2020-05-10 15:33:10 · 190 阅读 · 0 评论