摘要:
和上一题没啥区别,只不过要记录顺序。 一开始Queue里的是out degree是0 的,从哪个开始都一样,也可以一下子都拿出来。 以后每找到一个,就加到RES里,最后看情况返还就行了。。 Java public class Solution { public int[] findOrder(int 阅读全文
摘要:
这个题有俩EDGE CASE不容易想到。 一个是没有路径是返还“/"不是"" 另一个是有可能出现a//b这种情况,split会分出一个空字符串 然后就是EASY难度的了。。 Java public class Solution { public String simplifyPath(String 阅读全文
摘要:
需要知道以下几点: XOR 返还不一样,不一样的相加那么结果是1。 AND 返还进位,进位之后肯定是0. 相当于原题变为A+B之后,算2部分,第一部分是相加之后没进位的那些bits,都是1,第二部分是进位的那些bits. 两部分相加就行了。 用迭代,停止的情况是第二部分是0。。 public int 阅读全文
摘要:
这个傻屌题,二刷思路一下子就找到了,问题是edge case多的一逼,其实难就难在如何处理相等的2个元素。比如记录相等前的正负判断,这个还好说。 一上来就相等怎么办,必须解决这种情况,反正和麻烦。。 Java public class Solution { public int wiggleMaxL 阅读全文
摘要:
遍历原数组,当前I,然后随机nextInt(length i),两个SWAP,就表示随便选了一个放到I了,然后再看I+1,I+2。。到最后就行了。 int[] origin; int[] res; Random rdm = new Random(); public Solution(int[] nu 阅读全文