![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
流浪所
这个作者很懒,什么都没留下…
展开
-
冒泡排序算法
冒泡排序算法冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。算法原理冒泡排序算法的原理如下:比较相邻的元素。如果第一个原创 2021-07-07 22:18:32 · 286 阅读 · 1 评论 -
LeetCode 两数之和
描述给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例 1输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2输入:nums = [3,2,4], target =原创 2021-07-06 19:01:04 · 87 阅读 · 0 评论 -
剑指Offer JZ63数据流中的中位数
描述如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。示例1输入:[5,2,3,4,1,6,7,0,8]返回值:"5.00 3.50 3.00 3.50 3.00 3.50 4.00 3.50 4.00 "说明数据流里面不断吐出的是5,2,3…,则得到的平均数分别原创 2021-07-06 18:03:38 · 111 阅读 · 0 评论 -
剑指Offer_简单_JZ5_用两个栈实现队列
题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。分析确定stack1为入栈,stack2为出栈(即入数据永远都往stack1中入,出数据永远都从stack2中出,但是当stack2为空时,出数据得从stack1中倒数据),因为将栈中的元素倒一遍就将数据倒序了,就可以达到队列的效果。解题思路import java.util.Stack;public class Solution { Stack<Integer> stack1 = n原创 2021-03-29 11:41:42 · 61 阅读 · 0 评论 -
剑指Offer_简单_JZ6_旋转数组中最小的数字
题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。示例1输入[3,4,5,1,2]输出1解题思路import java.util.ArrayList;public class Solution { public int minNumberInRotateArray(int [] array) { if(array.lengt原创 2021-03-29 11:39:09 · 62 阅读 · 0 评论 -
剑指Offer_入门_JZZ_斐波那契数列
剑指Offer_入门_JZZ_斐波那契数列题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1)。n≤39。示例1输入4,返回值3基本定义斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368斐波那契数列特别指出:第0项是0,第1项是第一个1原创 2021-03-29 10:54:14 · 385 阅读 · 0 评论