![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode
文章平均质量分 68
麦穗麦穗
若有恒,何必三更眠五更起,最无益,一日曝十日寒。
展开
-
leetcode---剑指Offer 03.数组中重复的数字
总结剑指Offer中查找算法(简单)系列文章目录一、题目介绍二、解题思路三、结果一、题目介绍找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3 来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/shu-zu-zhon原创 2021-09-28 15:36:13 · 232 阅读 · 0 评论 -
Java中的LinkedList
参考链接: https://blog.csdn.net/u012011332/article/details/106849741.感谢这位同学总结。原创 2021-09-23 21:03:45 · 218 阅读 · 0 评论 -
leetcode---剑指Offer 06.从头到尾打印链表 题解
记录写题思考过程,方便日后系统复习文章目录一、题目介绍二、解题思路三、结果一、题目介绍输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。输入:head = [1,3,2]输出:[2,3,1]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/cong-wei-dao-tou-da-yin-lian-biao-lcof/著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。二、解题思路参考链接:作者:原创 2021-09-13 21:52:15 · 200 阅读 · 0 评论 -
leetcode--剑指 Offer 30. 包含min函数的栈 题解
提示:记录此篇,只为加强当下写这道题的印象,并且方便日后系统地复习。文章目录一、题目介绍二、解题思路三、结果一、题目介绍定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min、push 及 pop 的时间复杂度都是 O(1)。示例:MinStack minStack = new MinStack();minStack.push(-2);minStack.push(0);minStack.push(-3);minStack.min(); --原创 2021-09-13 02:19:50 · 158 阅读 · 0 评论 -
leetcode--剑指Offer 第一题:用两个栈实现队列
提示:记录只为这个题目的知识点,为今后自己能够很系统的复习文章目录一、题目介绍二、解题思路二、使用步骤1.引入库2.读入数据总结一、题目介绍用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )示例1:输入:["CQueue","appendTail","deleteHead","deleteHead"][[],[3],[]原创 2021-09-12 20:01:12 · 108 阅读 · 0 评论 -
leetcode---661图片平滑器(二维数组及滚动数组专题)
目录一、题目介绍二、分析题意三、解题思路四、结果一、题目介绍包含整数的二维矩阵 M 表示一个图片的灰度。你需要设计一个平滑器来让每一个单元的灰度成为平均灰度 (向下舍入) ,平均灰度的计算是周围的8个单元和它本身的值求平均,如果周围的单元格不足八个,则尽可能多的利用它们。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/image-smoother著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。二、分析题意首先已知一个原创 2021-09-09 13:21:08 · 154 阅读 · 0 评论 -
leetcode118---杨辉三角形(二维数组及滚动数组 )
目录一、题目介绍二、解题思路三、结果一、题目介绍给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。在「杨辉三角」中,每个数是它左上方和右上方的数的和来源:力扣(leetcode)链接: pascals-triangle.著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。二、解题思路1、将杨辉三角形先变成我们熟悉的样子根据上图找规律:① 每行第一个与最后一个均为1②每行除第一个与最后一个,其余均为上一行对应的两个数的和③将上一行数暂存原创 2021-09-08 11:05:24 · 170 阅读 · 0 评论 -
leetcode283---将所有零0移动到末尾,其余元素次序不变
一、题目介绍给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。输入: [0,1,0,3,12]输出: [1,3,12,0,0]来源:力扣(leetcode)链接: moveZero.著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。二、解题思路1.暴力解法对于没有头绪的算法题,我们一般可以先尝试暴力解法,然后层层递进优化,下面是我参考力扣题解里老汤老师的讲原创 2021-09-06 22:48:25 · 619 阅读 · 0 评论 -
算法分析与设计作业二——快速排序
基本思想:任取一个元素(如第一个)为中心 所有比它小的元素一律往前放,比它大的元素一律后放,形成左右两个子表; 对各个子表重新选择中心元素并依次规则调整,直到每个子表的元素只剩下一个;每一趟的子表的形式是采用从两头向中间交替式逼近法;由于每趟中各子表的操作都相似,可采用递归算法;①首先拿49作为哨兵元素,自始至终都是high先从右向左移,即j--;找到比49小的元素27时停止;将...原创 2019-04-21 17:03:38 · 500 阅读 · 0 评论 -
算法分析作业二——合并排序
合并排序主要是利用分治算法思想,将n个数进行排序。算法思想:将需要排序的元素分成大概相等的2个子集合,即左侧和右侧,生成的集合再次通过Mergesort算法进行递归分割,直到它们分解为每个集合中的单个元素。分别给2个子集合进行排序,它将每次比较中较小的元素插入到临时数组中,再选择较小元素的下一个,通过比较,再选择两者中的较小元素放至临时数组,最终将2个排好序的子集合合并成一个有序的集合。主...原创 2019-04-21 17:04:15 · 914 阅读 · 0 评论 -
leetcode:495:提莫攻击
leetcode:495:提莫攻击考查的知识点思路考查的知识点这道题,主要考查数组方面的知识——数组的遍历思路艾希总的中毒时间等于每一次攻击中毒时间相加的和。所以要计算每一次攻击之后的中毒时间,题目给出攻击一次,中毒时间是duration秒,但是并不是每次攻击都要累加duration秒。因为会出现艾希中毒过程中,再次遇到攻击,再次中毒(重复中毒),这个时候中毒时间并不是依次顺延。具体理解如下:每一次攻击之前艾希有两种状态:还在中毒过程中;没有中毒。判断艾希是哪一种状态的标准是看timeSeries原创 2021-08-26 11:42:09 · 94 阅读 · 0 评论