• 将字符串反转的几种实现方式

    java中实现字符串反转的方式有很多种,以下为比较常用的几种。 方式一 二分递归地将后面的字符和前面的字符连接起来。 public static String reverse(String srcString) { int length = srcString.length(); if (length <= 1) { return srcStri

    SPPan 2019-03-25 算法基础

    阅读更多
  • 二维数组中的查找

    问题描述 给定一个二维数组,其每一行从左到右递增排序,从上到下也是递增排序。给定一个数,判断这个数是否在该二维数组中。 解决思路 该二维数组中的一个数,它左边的数都比它小,下边的数都比它大。因此,从右上角开始查找,就可以根据 target 和当前元素的大小关系来缩小查找区间,当前元素的查找区间为左下角的所有元素。 具体实现 public class Solution

    SPPan 2019-03-21 算法基础

    阅读更多
  • 寻找数组中的重复数字

    问题描述 在一个长度为 n 的数组里的所有数字都在 0 到 n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字是重复的,也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 问题关键点 所有数字都在 0 到 n-1 的范围内 找出数组中任意一个重复 思路 使用最小的空间复杂度和时间复杂度来处理。 由于所有数字都在0到n-1之间,证明数组的长度一定大于最

    SPPan 2019-03-21 算法基础

    阅读更多