[LeetCode]移除元素(Remove Element)

2018-10-16
阅读 1 分钟
2.8k
给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。

[LeetCode]删除排序数组中的重复项(Remove Duplicates from Sorted Array)

2018-10-10
阅读 1 分钟
2.3k
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。

[LeetCode]k个一组翻转链表(Reverse Nodes in k-Group)

2018-10-09
阅读 2 分钟
3.4k
题目描述 给出一个链表,每 k 个节点一组进行翻转,并返回翻转后的链表。 k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么将最后剩余节点保持原有顺序。 示例 : 给定这个链表:1->2->3->4->5 当 k = 2 时,应当返回: 2->1->4->3->5 当 k = 3 时,应当返回: 3-&...

[LeetCode]两两交换链表中的节点(Swap Nodes in Pairs)

2018-10-09
阅读 1 分钟
3.2k
题目描述 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 示例: 给定 1->2->3->4, 你应该返回 2->1->4->3. 说明: 你的算法只能使用常数的额外空间。 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 ListNode数据结构 {代码...} 解决方法 使用3个指针进行两两交换,分...

[LeetCode]合并K个排序链表(Merge k Sorted Lists)

2018-10-08
阅读 1 分钟
2.9k
输入:[ 1->4->5, 1->3->4, 2->6]输出: 1->1->2->3->4->4->5->6

[LeetCode]括号生成(Generate Parentheses)

2018-09-30
阅读 1 分钟
2.3k
题目描述 给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。 例如,给出 n = 3,生成结果为: [ "((()))", "(()())", "(())()", "()(())", "()()()"] 解决方法 合法的括号: 左括号在对应右括号的左边 -> 先添加左括号再添加右括号即可保证左括号在右括号的左边 相同数量的...

[LeetCode]有效的括号(Valid Parentheses)

2018-09-28
阅读 1 分钟
3.4k
题目描述 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 注意空字符串可被认为是有效字符串。 示例 1:输入: "()"输出: true示例 2:输入: "()[]{}"输出: true 示例 3:输入: "(]"输出: false 示例 4:...

[LeetCode]删除链表的倒数第N个节点(Remove Nth Node From End of List)

2018-09-27
阅读 1 分钟
1.8k
给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。

[LeetCode]四数之和(4Sum)

2018-09-26
阅读 2 分钟
3.3k
给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。注意:答案中不可以包含重复的四元组。示例:

[LeetCode]电话号码的字母组合(Letter Combinations of a Phone Number)

2018-09-25
阅读 2 分钟
3.8k
题目描述 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例: 输入:"23"输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"]. 说明:尽管上面的答案是按字典序排列的,但是你可以任意选择答案输出的顺序。 解决方法 ...

[LeetCode]最长公共前缀(Longest Common Prefix)

2018-09-25
阅读 2 分钟
5.2k
示例 1:输入: ["flower","flow","flight"]输出: "fl"示例 2:输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。 说明:所有输入只包含小写字母 a-z 。

[LeetCode]罗马数字转整数(Roman to Integer)

2018-09-20
阅读 2 分钟
3.2k
例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX + V + II 。通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如 4 不写做 IIII,而是 IV。数字 1 在数字 5 的左边,所表示的数等于大数 5 减小数 1 得到的数值 4 。同样地,数字 9 表示为 IX。这...

[LeetCode]整数转罗马数字(Integer to Roman)

2018-09-18
阅读 2 分钟
2.7k
例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX + V + II 。通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如 4 不写做 IIII,而是 IV。数字 1 在数字 5 的左边,所表示的数等于大数 5 减小数 1 得到的数值 4 。同样地,数字 9 表示为 IX。这...

[LeetCode]正则表达式匹配(Regular Expression Matching)

2018-09-09
阅读 3 分钟
4.5k
给定一个字符串 (s) 和一个字符模式 (p)。实现支持 '.' 和 '*' 的正则表达式匹配。'.' 匹配任意单个字符。'*' 匹配零个或多个前面的元素。匹配应该覆盖整个字符串 (s) ,而不是部分字符串。

[LeetCode]回文数(Palindrome Number)

2018-09-08
阅读 1 分钟
3.1k
示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。 示例 3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。 进阶: 你能不将整数转为字符串来解决这个问题吗?

[LeetCode]字符串转整数(String to Integer (atoi))

2018-09-05
阅读 2 分钟
4.4k
实现 atoi,将字符串转为整数。在找到第一个非空字符之前,需要移除掉字符串中的空格字符。如果第一个非空字符是正号或负号,选取该符号,并将其与后面尽可能多的连续的数字组合起来,这部分字符即为整数的值。如果第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。字符串可以在形成整数的字符...

[LeetCode]反转整数(Reverse Integer)

2018-09-04
阅读 1 分钟
3.8k
示例 1:输入: 123输出: 321示例 2:输入: -123输出: -321 示例 3:输入: 120输出: 21 注意:假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。

[LeetCode]Z字形变换(ZigZag Conversion)

2018-09-03
阅读 2 分钟
2.3k
之后从左往右,逐行读取字符:"PAHNAPLSIIGYIR"实现一个将字符串进行指定行数变换的函数:string convert(string s, int numRows);

仿segmentfault-table横向滚动

2018-09-02
阅读 2 分钟
3k
问题描述 自己的博客在用移动端访问时,如果table的列数足够多会显示不全,如下图红圈所示 正常情况如图 解决过程 使用chrome发现segmentfault的解决方法是在table上套一个table-wrap,如下图蓝色背景和红圈所示 首先想到直接在table上套一个table-wrap即可接着查看别的table时发现并不是每一个table都被套上一个table-w...

[LeetCode]最长回文子串(Longest Palindromic Substring)

2018-09-02
阅读 5 分钟
6.6k
首先,我们通过在字母之间插入特殊字符'#'来将输入字符串S转换为另一个字符串T,这么做的原因很快就会很快清楚。例如:S =“abaaba”,T =“#a#b#a#a#b#a#”。为了找到最长的回文子串,我们需要在每个Ti周围扩展,使得Ti-d ... Ti + d形成回文。你应该马上看到d是以Ti为中心的回文的长度。我们将中间结果存储在数组P...

[LeetCode]两个排序数组的中位数(Median of Two Sorted Arrays)

2018-09-01
阅读 4 分钟
2.6k
给定两个大小为 m 和 n 的有序数组 nums1 和 nums2 。请找出这两个有序数组的中位数。要求算法的时间复杂度为 O(log (m+n)) 。

[LeetCode]无重复字符的最长子串(LongestSubstringWithoutRepeatingCharacters)

2018-08-31
阅读 1 分钟
7.2k
示例:给定 "abcabcbb" ,没有重复字符的最长子串是 "abc" ,那么长度就是3。给定 "bbbbb" ,最长的子串就是 "b" ,长度是1。给定 "pwwkew" ,最长子串是 "wke" ,长度是3。请注意答案必须是一个子串,"pwke" 是 子序列 而不是子串。

[LeetCode]两数相加(Add Two Numbers)

2018-08-30
阅读 3 分钟
2.4k
给定两个非空链表来表示两个非负整数。位数按照逆序方式存储,它们的每个节点只存储单个数字。将两数相加返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。

[LeetCode]两数之和(Two Sum)

2018-08-29
阅读 1 分钟
2.5k
示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]

ArrayList实现原理

2018-01-30
阅读 18 分钟
2.6k
ArrayList可以简单的看作是动态数组,相对于普通的数组它可以动态的增加容量或者减少容量。要注意的是ArrayList并不是线程安全的,因此一般建议在单线程中使用ArrayList。

Spring Boot快速入门(六):thymeleaf

2018-01-22
阅读 2 分钟
4.1k
在之前的示例中,我们都是通过@RestController来处理请求,所以返回的内容为json对象。当我们需要页面的时候使用@Controller,使其寻找模版页面

Spring Boot快速入门(五):使用MyBatis(注解形式)进行数据库操作

2018-01-20
阅读 4 分钟
6.4k
添加依赖 新建项目选择web,MyBatis,MySQL三个依赖 对于已存在的项目可以在bulid.gradle加入,spring boot将会帮你自动配置好 {代码...} 配置基本信息 然后在src/main/resources/application.properties下添加基本配置 {代码...} 创建实体 创建一个User实体,包含id、name(姓名)、age(年龄)属性 {代码...} 创建数据访...

Spring Boot快速入门(四):使用jpa进行数据库操作

2018-01-18
阅读 5 分钟
7.8k
添加依赖 新建项目选择web,JPA,MySQL三个依赖 对于已存在的项目可以在bulid.gradle加入,spring boot将会帮你自动配置好 {代码...} 配置基本信息 然后在src/main/resources/application.properties下添加基本配置 {代码...} spring.jpa.properties.hibernate.hbm2ddl.auto 其作用是:自动创建、更新、验证数据库表结构。...

Spring Boot快速入门(三):依赖注入

2018-01-17
阅读 2 分钟
4.7k
spring boot使用依赖注入的方式很简单,只需要给添加相应的注解即可 @Service用于标注业务层组件 @Controller用于标注控制层组件 @Repository用于标注数据访问组件,即DAO组件 @Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。 然后在使用的地方使用@Autowired即可 创建MyComponent,使用@Com...

Spring Boot快速入门(二):http请求

2018-01-17
阅读 3 分钟
7.4k
原文地址:[链接] 一、准备 postman:一个接口测试工具创建一个新工程 选择web不会的请看Spring Boot快速入门(一):Hello Spring Boot 二、开始 新建java类RequestCtrl 1.添加一个all方法,使用@RequestMapping注解,可以处理所有的http请求 {代码...} requestMapping的作用可以简单理解为给方法加个地址,让别人能访...