算法
文章平均质量分 77
wintershii
越努力越幸运
展开
-
算法—KMP字符串匹配
算法—KMP字符串匹配 现在有一个问题,要从一个字符串中查找出指定子串的位置(初始下标),通常地,我们会使用朴素的字符串匹配算法,如下面这道题 给出主串和需要查找的子串,输出子串是否存在,并输出子串的首位在主串中的下标 首先,在主串中设下标i,在字串中设下标j,均从0开始 这时,将子串第一位与主串的第一位进行比较,结果是不同的,那么尽然不同,子串初始位置就一定不在当前的...原创 2018-08-14 09:54:56 · 374 阅读 · 0 评论 -
排序—冒泡,选择,插入排序
排序—冒泡,选择,插入排序 这是三种非常简单的排序算法,但同时我们也必须要牢牢掌握,最近一直在写java,所以也想试着用java写一些算法题目,来巩固自己的语言基础。下面是分别使用冒泡排序,选择排序,插入排序的代码,每种排序算法写在了相对应的方法中。 public class SimpleSort { public static void main(String[] args) {...原创 2018-08-02 21:50:08 · 337 阅读 · 0 评论 -
LeetCode—无重复字符的最长子串
LeetCode—无重复字符的最长子串 题目: 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。 示例 3: 输入: "pwwkew...原创 2018-12-10 12:32:24 · 227 阅读 · 2 评论 -
排序算法—八大排序
八大排序算法 1.冒泡排序 冒泡排序是一种交换排序, 就是两两比较待排序的元素, 若次序不满足要求则交换, 知道整个数组有序 基本思想 : 每次找到最大或最小值, 然后放到首位或最后一位 对于长度为n 的数组, 因为只需要找到n-1个数的位置, 最后一个就已经确定了. 所以我们外部循环需要从0 ~ n-2. 内部循环从 n-1到 i+1, 内部循环每次将最大值或最小值推到i的位置(即选出第i小或第...原创 2019-08-06 16:53:19 · 196 阅读 · 0 评论