算法
喂,小猴子
这个作者很懒,什么都没留下…
展开
-
关于链表的算法题:两数相加,删除链表的倒数第N个节点,环形链表,排序链表,相交链表
环形链表给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。说明:不允许修改给定的链表。示例 1:示例 2:示例 3:java答案:/** * Definition for singly-linked ...原创 2019-07-10 16:23:19 · 200 阅读 · 0 评论 -
关于字符串的算法题2:最长公共前缀,最长回文子串
1. 最长公共前缀编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。说明:所有输入只包含小写字母 a-z 。java答案:1. 首先先进行前两个选择...原创 2019-07-12 10:52:49 · 1146 阅读 · 0 评论 -
关于链表的算法题2:反转链表,删除链表中的节点,回文链表,旋转链表,合并两个有序链表,合并K个有序链表
1. 反转链表反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL两种方法 :1是循环,2是递归Java答案:/** * Definition for singly-linked list. * public class ListNode { * i...原创 2019-07-10 21:20:18 · 298 阅读 · 0 评论 -
关于数组的算法题:买卖股票的最佳时机,存在重复的数,合并两个有序数组,最大子序和
1. 买卖股票的最佳时机II给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5...原创 2019-07-02 11:16:14 · 307 阅读 · 0 评论 -
关于字符串的算法题:回文数,字符串相乘,字符串转换整数,反转字符串中的单词III,反转字符串,
1. 回文数判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。j...原创 2019-07-11 16:18:11 · 419 阅读 · 0 评论 -
关于数组的算法题2:删除排序数组中的重复项,三数之和,最接近的三数之和,盛最多水的容器,除自身以外数组的乘积
1. 删除排序数组中的重复项给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元素。...原创 2019-07-04 11:16:32 · 213 阅读 · 0 评论 -
关于位运算的算法题:只出现一次的数字,求众数,Nim游戏,汉明距离,2的幂,比特位计数
1. 只出现一次的数字给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4java答案:在这里插入代码片JavaScript答案:在这里插入代码片2. 求众...原创 2019-07-11 09:30:50 · 520 阅读 · 0 评论