03.数组中重复的数字

image.png
注意:

  • 重复,想到 Set 定义数组为HashSet<>
  • 思想一:一直存,存不进去就说明重复了
    image.png
  • 思想二(巧解):长度为n,数字都在0~n-1的范围,
  • 编号和内容一致,跳下一位;
  • 编号指定的内容和内容作为编号指定的内容一致,就是重复,返回内容
  • 交换 编号指定的内容和内容作为编号指定的内容。
    image.png

04.二维数组中的查找

image.png

  • 思想一:暴力遍历 X
  • 思想二:二叉树
  • 从右上角/左下角开始遍历,

    • 右上角:往左变小,往下变大;可以把矩阵旋转45°,就是二叉树
    • 左下角:往右变大,往上变小;可以把矩阵旋转45°,就是二叉树

    注意:

  • 得到二维数组的行和列

    matrix.length;matrix[0].length;

    image.png

  • 漏掉输入null矩阵的情况

      if (matrix == null || matrix.length == 0 || matrix[0].length == 0) {
          return false;
      }
    

MeeWoW
18 声望1 粉丝

加油