摘要: 假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i ,都有一个胃口值 gi ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j ,都有一个尺寸 sj 。如果 sj >= gi ,我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你 阅读全文
posted @ 2020-07-18 17:16 _未知的暖意 阅读(126) 评论(0) 推荐(0)
摘要: 基数排序的基本思路 521 123 496 333 224 假设有这几个数 排序的基本过程是 先获取这五个数各位上的数,根据数对号入桶(所以需要十个桶子,0~9的下标分别对应这是存放数字几的桶子) 第一次: 521入一号桶 123入三号桶 496入6号桶 333入三号桶 224入4号桶 再分别将0~ 阅读全文
posted @ 2020-07-18 16:02 _未知的暖意 阅读(263) 评论(0) 推荐(0)
摘要: 归并排序采用的是分治的思想 将数组对半,再对半,再对半,再对半。。。直到最后的每一个数都成单独的一块(这里就是递归了,左半边递归,右半边递归) 再将拆开后的数组合并,合并是有序的合并,升序为例,则小的在前,大的在后。 最终得到的数组就是有序的数组 //这是一个归并排序,拆分加合并的方法 public 阅读全文
posted @ 2020-07-18 15:39 _未知的暖意 阅读(126) 评论(0) 推荐(0)
摘要: 基本思路 选择一个数作为基数,直接选择下标为最最中间的就行 凡是比这个基数大的,统统放到这个基数的右边来 比这个基数小的,统统放到这个基数的左边来 递归即可(注意递归结束的条件) private static int [] quickSort(int array[], int left, int r 阅读全文
posted @ 2020-07-18 14:59 _未知的暖意 阅读(130) 评论(0) 推荐(0)
摘要: 希尔排序是插入排序的升级版 思路其实也大同小异 先对数组进行分组,假设8个数字 定义一个步长,步长设为数组长的的一半,即 arr.length / 2 则最开始步长为 8 / 2 = 4 (下标)04、15、26、37 各位一组进行插入排序比较 第二次步长为 4 / 2 = 2 则0 2 4 6、1 阅读全文
posted @ 2020-07-18 14:52 _未知的暖意 阅读(118) 评论(0) 推荐(0)
摘要: 基本思路分析: 首先选择第一个数作为基数,因为只有一个数,所以他就是一个有序的数组嘛。 然后遍历他后面的数,如果比他小,插入到他前面,如果比他大,就插入到他后面。此时就有两个数已经成为有序的了; 在遍历下一个数,找到他该插入的位置,即该位置的后一个数比改数大,前一个数比该数小。 5 1 4 2 3 阅读全文
posted @ 2020-07-18 14:40 _未知的暖意 阅读(153) 评论(0) 推荐(0)
摘要: 选择排序的思路是: 通过遍历数组,得到这一次遍历过程中遍历到的值最小的数的下标,将改下标的值与下标为第一的那个值交换,遍历元素个数减一,每次排序能确定一个数到其该去的位置上去 比较简单,代码记录,完事。 public class SelectSort { public static void mai 阅读全文
posted @ 2020-07-18 14:21 _未知的暖意 阅读(111) 评论(0) 推荐(0)
摘要: 冒泡排序,顾名思义,就是像气泡一样往上冒。 升序排序为例,从第一个数字开始,往向他后面的一个数字比较,如果前者大后者小,就交换,否则,不动,指针后移。依次类推 先来第一趟排序 用于示例的原始数据是:[5, 6, 1, 3, 4] for (int i = 0; i < arr.length - 1; 阅读全文
posted @ 2020-07-18 14:03 _未知的暖意 阅读(160) 评论(0) 推荐(0)
摘要: 给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。 示例 1: 输入: s = "abpcplea", d = ["ale","apple","monkey" 阅读全文
posted @ 2020-07-18 13:44 _未知的暖意 阅读(152) 评论(0) 推荐(0)
摘要: 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。 示例 1: 输入:head = [3,2,0,-4], pos = 1 输出:true 解释:链表中有一个环,其尾部连 阅读全文
posted @ 2020-07-18 13:16 _未知的暖意 阅读(111) 评论(0) 推荐(0)
摘要: 给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。 说明: 初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。 你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中 阅读全文
posted @ 2020-07-18 12:41 _未知的暖意 阅读(128) 评论(0) 推荐(0)
摘要: 给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。 示例 1: 输入: "aba"输出: True示例 2: 输入: "abca"输出: True解释: 你可以删除c字符。注意: 字符串只包含从 a-z 的小写字母。字符串的最大长度是50000。 来源:力扣(LeetCode)链接 阅读全文
posted @ 2020-07-18 12:14 _未知的暖意 阅读(124) 评论(0) 推荐(0)
摘要: 编写一个函数,以字符串作为输入,反转该字符串中的元音字母。 示例 1: 输入: "hello"输出: "holle"示例 2: 输入: "leetcode"输出: "leotcede"说明:元音字母不包含字母"y"。 来源:力扣(LeetCode)链接:https://leetcode-cn.com 阅读全文
posted @ 2020-07-18 11:16 _未知的暖意 阅读(146) 评论(0) 推荐(0)