之前阿里的一个笔试题,能否存在三个点,将数组进行四分操作,O(n)复杂度的,只需利用一个数组加上一个HashMap 来进行缓存即可。 无思路:三板斧,digui,hash,类比, 时刻要有递归与动态规划结合的思想。 有树有图多用递归
思路:依据最高点的想法,更新本身的参数,依次进行迭代处理,注意当节点小与0的时候
思路:如果m * n 矩阵中某个元素为0,那么整个行清零,整个列同时也清零。 O(m + n)空间复杂度,遍历了 最优解空间复杂度可以:缩减到O(1),用第一行,第一列进行标记
给一串电话号码,输出其中电话号码代表的所有可能的字符串。 思路:1.递归回溯法, 2.迭代版本,生成一个map用来做映射每一个数组,然后对每一个字符进行迭代。
思路:统计出孤立岛的个数,这个有一个很厉害的地方,存在1就至少存在一个岛,然后按照上下左右的方式进行蔓延。递归的方法,当数组越界的时候,或者当前这个结点不是1,就停止蔓延。
要求:“Z”字形遍历数组,返回一个list。 思路:用递归实现,传入level参数,正常来看是从左向右的,这里面加了一个小的技巧,就是偶数的话,正常从后面加,奇数的话,从前面开始插入,这样就保证了是后序。
要求:输出同一组的序列,包括颠倒了顺序的。 最优解: 用HashMap对index进行缓存
注意只包含两个数的数组情况,两个小于等于
新闻热点
疑难解答