首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Leecode刷题经典
订阅
bobby_developer
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
剑指 Offer 全解(Java 版)
3. 数组中重复的数字 在一个长度为 n 的数组里的所有数字都在 0 到 n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字是重复的,也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 要求时间复杂度 O(N),空间复杂度 O(1)。因此不能使用排序的方法,也…
LeetCode进阶559-广度优先搜索(BFS)
广度优先搜索算法(英语:Breadth-First-Search,缩写为BFS),又译作宽度优先搜索,或横向优先搜索,是一种图形搜索算法。简单的说,BFS是从根节点开始,沿着树的宽度遍历树的节点。如果所有节点均被访问,则算法中止。广度优先搜索的实现一般采用open-closed…
八大排序-插入排序
插入排序是一种简单直观的排序算法。 它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。 插入排序的核心是循环将数组插入有序序列中,使得数组从小到大最终有序。上图以数组int n[] = { 6, 5, 2, 7, 3, 9, 8 }…
LeetCode进阶-彩蛋二
关于“彩蛋”,数据结构与算法系列博客中,如有可能,博主尽量会在每一篇博客里埋下彩蛋。彩蛋的意义在刚开始写博客的开篇有说明过,实际就是算法实现过程的一些小技巧,而这些小技巧往往都是可以改进执行效率的。关于所有的彩蛋都会有特别的解释说明,千里之行始于足下,共勉~ 比较双重for循环…
LeetCode进阶-实战之快慢指针(阿里面试题)
快慢指针的使用经常会出现在各大公司的面试题中,虽然出题形式千差万别但本质思想却殊途同归(看下文说明)。比如近期github开源的面试题项目,其中就有一道比较基础的题目考察对快慢指针的理解。在数据结构与算法的学习过程中学会举一反三很关键。 示例: 给定一个链表: 1->2->3-…
LeetCode进阶206-反转链表(华为面试题)
本篇介绍一下关于链表结构很基础的知识,单链表反转。这个知识点同样经常会被各大公司当作面算题考察算法入门,正巧在最近开源的面试题项目中也看见了。事实上跟上一篇LeetCode进阶226-翻转二叉树(华为面试题)同属于如果不理解则会被面试官鄙视系列。 华为面试题-将单向链表reve…
【极简动态规划Day four- 接雨水】
“无聊的时候可以双击下屏幕,发现小变化,解锁掘金新功能。 leecode 42. 接雨水 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 解释:上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在…
神奇补0解决链表相加:LeeCode002两数相加
该解法使用数字相加的方法进行计算,但该解法有一个致命的问题是整数溢出。所以,严格意义上说,这种方式是错误的。代码如下: 该解法使用一个变量表示进位值。如下图,temp表示进位。将两个list长度改为一致,通过补0操作。 关于没到题目的解法我都发布在我的博客:https://ri…
leetcode:峰与谷问题(三)
题目:在一个整数数组中,“峰”是大于或等于相邻整数的元素,相应地,“谷”是小于或等于相邻整数的元素。例如,在数组{5,8,4,2,3,4,6}中,{8,6}是峰,{5,2}是谷。现在给定一个整数数组,
LeeCode精选题解之202. 快乐数
编写一个算法来判断一个数是不是“快乐数”。 一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1。如果可以变为 1,那么这个数就是快乐数。 初看到这个题目的时候,一点点思路都没有…