文件名称:leetcode走方格起点到终点-Coding-Interviews:剑指offer
文件大小:220KB
文件格式:ZIP
更新时间:2024-07-20 00:00:41
系统开源
leetcode走方格起点到终点 剑指offer精简总结 说明: 所用图书:剑指offer第二版 括号内是考察的知识点 题目前加 * 代表该题需要着重去理解(*的数目代表着重理解程度) 标红(下划线)的地方是需要着重理解 添加与LeetCode对应的题号(虽然目前LeetCode有剑指offer专题,但是题解较少) 3. 数组中的重复数字(数组) 3.1 判断重复数字(桶的思想) 长度为 n 的数组数字范围在0 —— n-1范围内,存在某些(不知道几个也不知道那些)数字重复,返回任意一个重复数字。 思路:0 — n-1是重点,可以让数字与下标各就各位(类似于桶),然后判断下标与数字是否相等,如果不相等,就与正确的位置进行交换(若原本正确位置的元素是正确的,说明这个数字重复了)。 3.2 *不修改数组找到任意重复数字(鸽巢原理,二分查找) n+1 长度的数组在 1 —— n 范围内,一定存在重复数字(一个或多个),找出任意一个重复数字,不能修改数组! 思路:n个数存在n+1的长度内(鸽巢原理),不断的二分 数的范围,统计全部的元素数目与范围的关系,如果元素数目大于 数的范围 长度,说明这