摘要: 链接 "237. Delete Node in a Linked List" 题意 删除指定的单向链表结点(除了尾结点) 思路 因为是单向链表,并不知道前序元素。所以不能将前序元素指向node的后继结点,应该转换思路,让node的值改为后继结点 的值,然后指向后继结点的后继结点。 代码 Java: 阅读全文
posted @ 2017-05-18 12:43 zyoung 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 链接 "575. Distribute Candies" 题意 给兄妹分糖果,糖果数量表示为偶数长度的数组,不同的数字代表不同的糖果,每个数字代表一颗糖果。现要求兄妹分得的糖果数量一样多,但是妹妹的种类必须尽量多。返回妹妹获得的糖果种类数。 思路 第一种:先对数组排序,那么同种糖果归类到了一起。只需 阅读全文
posted @ 2017-05-16 14:44 zyoung 阅读(468) 评论(0) 推荐(0) 编辑
摘要: 链接 "206. Reverse Linked List" 题意 翻转一个单向链表 思路 由于是单向链表,不能直接将第二个数指向第一个数,这样便失去了第三个数的地址。因此需要三个游标,一个指示当前结点,一个指示前序结点,一个指向后序结点。 代码 Java: 阅读全文
posted @ 2017-05-16 14:09 zyoung 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 链接 "401. Binary Watch" 题意 有一块二进制表,其中有4个LED灯代表时(0 11),6个LED灯代表分(0 59)。现给定一个非负整数n,代表有n个灯亮,列出所有可能的时间(顺序可任意)。 思路 来自讨论区,枚举每一种可能,注意h是乘以64(作为第7个灯,第6个是32),利用b 阅读全文
posted @ 2017-05-16 13:40 zyoung 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 链接 "13. Roman to Integer" 题意 根据罗马数字表示法给出阿拉伯数字表示法。 思路 按每一位的值相加即可,但若左边符号比右边符号小,是需要用较大值减较小值的。具体组数规则百度。 代码 Java: 阅读全文
posted @ 2017-05-16 11:24 zyoung 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 链接 "217. Contains Duplicate" 题意 给定一个数组,只要其中有元素重复,返回true,否则false 思路 利用set的性质即可 代码 Java: 阅读全文
posted @ 2017-05-16 10:46 zyoung 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 链接 "409. Longest Palindrome" 题意 给定一个包含大小写的字符串,计算这些字母能组成的最长的回文串的长度。 样例 Input: "abccccdd" Output: 7 Explanation: One longest palindrome that can be buil 阅读全文
posted @ 2017-05-16 10:40 zyoung 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 链接 "504. Base 7" 题意 给定一个整数,返回其七进制表示法。 思路 除7取余法即可,注意负数的情况,可以先视为正数,最后加上负号。 代码 Java: Java public class Solution { public String convertToBase7(int num) { 阅读全文
posted @ 2017-05-16 10:14 zyoung 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 链接 "242. Valid Anagram" 题意 给定两个字符串s和t,判断t是否为s的乱序字符串(即只是字母顺序被打乱) 思路 遍历两个字符串,记录其中每个字母出现的次数(将26个字母转为相应的数字作为数组下标存储),然后对比即可。 代码 Java: Java public class Sol 阅读全文
posted @ 2017-05-15 23:20 zyoung 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 链接 "169. Majority Element" 题意 给定一个数组,找出其中的“主”元素。定义为:出现次数超过⌊ n/2 ⌋次的元素。 注意: 数组非空且答案一定存在 [1,1,2,2]输出1,[2,2,1,1]输出为2 思路1 直接对数组排序,输出nums[nums.length/2]即可。 阅读全文
posted @ 2017-05-15 23:05 zyoung 阅读(117) 评论(0) 推荐(0) 编辑