剑指offer
范天缘
async&await配合try&catch是异步编程最优解。
展开
-
剑指offer(中等):最小的K个数(JavaScript)
描述 给定一个长度为 n 的可能有重复值的数组,找出其中不去重的最小的 k 个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4(任意顺序皆可)。 数据范围:,数组中每个数的大小 要求:空间复杂度 ,时间复杂度 示例1 输入: [4,5,1,6,2,7,3,8],4 复制 返回值: [1,2,3,4] 复制 说明: 返回最小的4个数即可,返回[1,3,2,4]也可以 示例2 输入: [1],0 复制 返回值: [] 复制 示例3 输入: [0,1,2,1,2],3原创 2021-10-11 14:17:20 · 146 阅读 · 1 评论 -
剑指offer(简单):数组中重复的数字(JavaScript)
在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任一一个重复的数字。 例如,如果输入长度为7的数组[2,3,1,0,2,5,3],那么对应的输出是2或者3。存在不合法的输入的话输出-1 示例1 输入:[2,3,1,0,2,5,3] 返回值:2 说明:2或3都是对的 解题思路:使用indexOf和lastIndexof函数 来区分 数组的重复值 function duplicate( numbers ) {原创 2021-08-06 17:37:34 · 277 阅读 · 1 评论 -
剑指offer(简单):不用加减乘除做加法(JavaScript)
描述 写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。 示例 输入:1,2 返回值:3 解题如下 function Add(num1, num2) { if(num1 == 0)return num2 if(num2 == 0)return num1 if(num1 == 0 && num2 == 0)return 0 let arr = [] arr[0]=num1 arr[1]=num2 r原创 2021-08-05 17:45:50 · 77 阅读 · 0 评论