剑指
kkkddde
祝你快乐
展开
-
剑指 Offer 45. 把数组排成最小的数(java)
输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。示例 1:输入: [10,2]输出: “102”示例 2:输入: [3,30,34,5,9]输出: “3033459”来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/ba-shu-zu-pai-cheng-zui-xiao-de-shu-lcof可以看成基于字符串的字典序的排序,使用快排解决。java提供了compareTo方法来比较判断规则原创 2021-06-16 20:28:24 · 97 阅读 · 0 评论 -
剑指 Offer 53 - II. 0~n-1中缺失的数字
题目描述:一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n-1之内。在范围0~n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。示例1:输入: [0,1,3]输出: 2示例2输入: [0,1,2,3,4,5,6,7,9]输出: 8思路1:双重暴力for循环class Solution { public int missingNumber(int[] nums) { if(nums[0]!=0)原创 2021-06-15 22:01:55 · 73 阅读 · 0 评论 -
剑指 Offer 03. 数组中重复的数字
题目描述:找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字示例1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3思路1:暴力双重for循环依次遍历。思路2:使用HashSet去重class Solution { public int findRepeatNumber(int[] nums) {原创 2021-06-15 21:35:35 · 51 阅读 · 0 评论