数据结构与算法
数据结构与算法
Coder Mark
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【数据结构与算法】堆
堆堆堆排堆堆是计算机科学中一类特殊的数据结构的统称,堆通常可以被看做是一棵完全二叉树的数组对象。如果一个结点的位置为k,则它的父结点的位置为[k/2],而它的两个子结点的位置则分别为2k和2k+1。每个结点都大于等于它的两个子结点构造方法Heap(int capacity):创建容量为capacity的Heap对象 public Heap(int capacity) { this.items= (T[]) new Comparable[capacity+1];原创 2020-07-23 22:31:44 · 5084 阅读 · 0 评论 -
Leetcode5 最长回文子串
给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。示例 1:输入: “babad”输出: “bab”注意: “aba” 也是一个有效答案。示例 2:输入: “cbbd”输出: “bb”动态规划 public String longestPalindrome(String s) { int len=s.length(); if (len<2){ return s;原创 2020-07-13 16:28:29 · 203 阅读 · 0 评论 -
Leetcode1 两数之和
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]class Solution { public int[] twoSum(int[] nums, int target) {原创 2020-07-13 13:22:44 · 199 阅读 · 0 评论 -
Leetcode 3 最长无重复子串
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串。pu原创 2020-07-13 11:43:32 · 200 阅读 · 0 评论 -
Leetcode2 两数相加
给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 807/** * Definition for singly-link原创 2020-07-13 09:33:48 · 203 阅读 · 0 评论 -
剑指Offer(Java)---字符串
字符串50:字符流中第一个不重复的字符50:第一个只出现一次的字符19:正则表达式匹配20:表示数值的字符串61:扑克牌中的顺子58:翻转字符串58:左旋字符串5.替换空格50:字符流中第一个不重复的字符请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。数组 //Insert one char from stringstream原创 2020-07-10 21:46:18 · 307 阅读 · 1 评论 -
剑指Offer(Java)---链表
链表原创 2020-06-19 01:15:30 · 324 阅读 · 0 评论 -
【Mark学算法】线性表
线性表原创 2020-04-28 19:54:43 · 310 阅读 · 0 评论 -
【Mark学算法】排序算法总结
排序算法冒泡排序选择排序插入排序希尔排序归并排序快速排序排序算法可分为:初级排序算法,高级排序算法初级排序算法分为,冒泡排序,选择排序,插入排序冒泡排序排序原理比较相邻的元素,如果前一个元素比后一个元素大,就交换两个元素的位置对每一对相邻元素做同样的工作,从开始第一对元素到结尾的最后一对元素,最终,最后位置的元素就是最大值API类名BubbleBubble()创建Bu...原创 2020-04-26 02:38:45 · 400 阅读 · 1 评论 -
【Mark学算法】排序算法(一)
排序算法初级排序算法排序规则模板初级排序算法排序算法是将一组对象按照某种逻辑顺序重新排列的过程.排序规则排序算法的目标是将所有元素的主键按照某种方式排列(通常按照大小或字母顺序).排序后索引较大的主键等于索引较小的主键.元素和主键的性质在不用的应用中千差万别.在Java中,元素通常都是对象,对主键的抽象则是通过一种内置的机制Comparable.在创建自己的数据类型时,只需实现Compar...原创 2020-04-23 03:16:40 · 304 阅读 · 0 评论
分享