- 博客(12)
- 收藏
- 关注
原创 同构字符串
同构字符串的Java实现题面From: https://leetcode-cn.com/problems/isomorphic-strings/给定两个字符串 s 和 t,判断它们是否是同构的。如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。示例 1:输入: s = "egg", t = "add"输出: true示例 2:输入: s = "foo", t
2020-12-27 21:55:45
92
原创 安装Spring Boot CLI
下载zip包地址:https://repo.spring.io/release/org/springframework/boot/spring-boot-cli/2.0.1.RELEASE/spring-boot-cli-2.0.1.RELEASE-bin.zip?spm=a2c6h.12873639.0.0.77af1862OSB06Z&file=spring-boot-cli-2.0.1.RELEASE-bin.zip添加环境变量注意地址到bin目录D:\Spring_Boot..
2020-07-08 01:08:13
157
原创 JAVA实现分割回文串
题干LeetCode链接:https://leetcode-cn.com/explore/interview/card/top-interview-quesitons-in-2018/275/string/1137/给定一个字符串 s,将 s 分割成一些子串,使每个子串都是回文串。返回 s 所有可能的分割方案。示例:输入: "aab"输出:[ ["aa","b"], ["a"...
2019-10-20 15:36:08
835
2
原创 java实现验证回文字符串
题干原题链接:https://leetcode-cn.com/problems/valid-palindrome/给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:本题中,我们将空字符串定义为有效的回文串。示例 1:输入: "A man, a plan, a canal: Panama"输出: true示例 2:输入: "race a car"...
2019-10-10 11:40:01
598
原创 鸡蛋掉落问题
鸡蛋掉落问题链接: https://leetcode-cn.com/problems/super-egg-drop/solution/ji-dan-diao-luo-by-leetcode/题干你将获得 K 个鸡蛋,并可以使用一栋从 1 到 N 共有 N 层楼的建筑。每个蛋的功能都是一样的,如果一个蛋碎了,你就不能再把它掉下去。你知道存在楼层 F ,满足 0 <= F <=...
2019-09-18 23:50:29
211
原创 两数之和
题干链接:https://leetcode-cn.com/problems/two-sumGiven an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exact...
2019-09-15 22:12:59
83
原创 浅谈数据结构——队列及java解析
概念队列(Queue)实现的是先进先出(first-in, first-out, FIFO)的策略。JAVA实现本文用集合来构建队列。主要方法有:判断队列是否为空、是否为满,检查整个队列、添加队列(队尾)、删除队列(队头)。属性有:数组最大值、数组、队尾指针、队头指针。package com.tutorialspoints;public class Queue { priva...
2019-09-05 23:06:44
113
原创 浅谈数据结构——栈及其JAVA实现
概念栈(stack)实现后进先出(last-in first-out LIFO)策略。对栈的操作分为两种:压入(PUSH)和弹出(POP), 即插入和删除。对栈的检验也分两种:是否为空和是否为满。当我们执行压入操作时,自然先要判断栈是否满了,再进行压入;相对应的,当我, 执行弹出操作时,自然先判断栈是否为空,再进行弹出。以此,我们可以构建一个完整的栈。JAVA 实现在现在JAVA库中,...
2019-09-04 22:34:57
92
原创 JAVA实现分治法的合并排序及解析
合并排序的思路本文将讨论用分治法来实现的合并排序。将问题拆分成几个规模较小但类似于原问题的子问题,再递归去求解这些子问题,最后再合并这些子问题的解来建立原问题的解。每层递归时都有三个步骤:分解:分解待排序的n个元素的序列成n/2个元素的两个子序列。解决:使用归并排序递归得排序这两个子序列。合并:合并两个已排序的子序列来产生最终答案。事实上,当左右数组只含有1个元素的时候,这俩数组天然是...
2019-08-28 22:43:52
2345
原创 JAVA实现计数排序及其解析
计数排序的介绍假设n个输入的每个元素都是在0到k区间内一个整数,其中k为某个整数,当k=O(n)时,排序的运行时间为θ(n)。基本思想是:对每一个输入元素n,确定小于x的元素个数。利用这一信息,就可以直接把x放到他输出数组的位置上了。例如,如果有17个元素小于x,则x就应该在第18个输出位置上。计数排序的JAVA实现准备两个数组B,C,并初始化C。数组B用来储存最后排列好的输出元素,数组...
2019-08-23 22:54:31
799
原创 JAVA实现快速排序及解析
快速排序定义快速排序和归并排序一样,运用了分治的思想,下面是对一数组A[p…r]进行快排的三步分治过程:分解:把数组A分成(可能为空的)两部分,A[p…q-1]和A[p+1…r],左边子数组的每个元素都小于或等于A[q],显然,右边子数组的每个元素都大于A[q]。解决:用地柜调用快速排序,对两个子数组进行排序。合并:不需要另外进行合并操作,直接返回排好序的A。快速排序性质最坏运行时间是...
2019-08-19 20:40:53
689
原创 JAVA实现堆排序及解析
堆排序介绍堆排序利用了堆(二叉树)的数据结构进行排序。在时间上,堆排序时间复杂度是O(nlg(n)),和归并排序一样,比插入排序快。在空间上,堆排序具有空间原址性:任何时候都只需要常数个额外的元素空间储存临时数据,比归并排序更省空间。堆堆可以看作是近似的完全二叉树。最大堆的定义是所有父节点都大于或等于它的子节点。堆的高度是θlg(n)。其中父节点和它的左右子节点的下标计算方式是:...
2019-08-15 23:51:12
260
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人