摘要:
把每一位分别加起来,超过十也存起来,然后取3的余数,多余的部分就是单独那个的。 未操作: 取某一位 (x >>i)&1 先把这个数x往右移i位,然后想要取的那一位就位于个位数上,和1去且意思是和0000...0001取且,所以只保留了最后一位 阅读全文
摘要:
没什么说的 阅读全文
摘要:
两个stack,一个存正常的数,一个存min值,重点在于,如果有和当前最小值一样的新的数进来,也要推进min stack 阅读全文
摘要:
双指针,找到重合点,然后新一个指针从头出发,两个指针交汇的地方就是圈的起点 阅读全文
摘要:
双指针 阅读全文
摘要:
1. 递归 虽然超时没有通过,我觉得这样做道理上是对的 2.动规 重要的就是状态转移方程,res[i] = res[i-1] && wordDict.contains(s.substring(i-1, end)) 如果res[i]表示的是,从0开始到index为i-1,即从头开始i位字符有解,那么r 阅读全文
摘要:
HashMap是可以做的,没什么好说的,但是可以考虑一下位操作的做法。 用到是XOR,异或,^. 如果是两个不同的数就会返回真,如果是想同的就为假。一对一对相同的数取异或,那么就始终返回0,最后只剩下一个单独的数和0取异或,那么还是这个数本身。而且异或有交换律和结合律,所以先后顺序是没有关系。 综上 阅读全文
摘要:
思路: 如果有解,那么从头走到尾,总盈利是大于0的。如果到某一天,1. 之前总利润是亏损的,设为-A,但是从这天开始到截止日期,是盈利的,盈利额设为B。 那么-A+B>0,那么从这点开始是可以环游的,因为后半程赚的比前半程亏损是多的. 2.从这点出发走到截止的时候,必须每一站都满足条件1,因为不然到 阅读全文
摘要:
图的遍历,也就是bfs,区别在于,每一个点的左右节点不是预先知道的,是要创建的时候加进去 阅读全文
摘要:
思路是这样的: 1.把连着边缘上'O'的全部标成'#' 2.把所有没有变成'#'的'O'变成’X‘ 3.把所有’#‘变回‘O’ 算法是FloodFill 算法是这个意思,假如有一个格子板,从某一个格子出发,把连在一起并且没有涂过色的格子都涂上某个颜色。 ref: https://zh.wikiped 阅读全文