随笔分类 -  数据结构与算法

摘要:给你一个字符串 s,找到 s 中最长的回文子串。 示例 1: 输入:s = "babad"输出:"bab"解释:"aba" 同样是符合题意的答案。示例 2: 输入:s = "cbbd"输出:"bb" 提示: 1 <= s.length <= 1000s 仅由数字和英文字母组成 来源:力扣(LeetC 阅读全文
posted @ 2022-04-24 22:47 aaronthon 阅读(23) 评论(0) 推荐(0) 编辑
摘要:给你一个由若干单词组成的句子 sentence ,单词间由空格分隔。每个单词仅由大写和小写英文字母组成。 请你将句子转换为 “山羊拉丁文(Goat Latin)”(一种类似于 猪拉丁文 - Pig Latin 的虚构语言)。山羊拉丁文的规则如下: 如果单词以元音开头('a', 'e', 'i', ' 阅读全文
posted @ 2022-04-24 22:42 aaronthon 阅读(316) 评论(0) 推荐(0) 编辑
摘要:请你判断一个 9 x 9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图) 注意: 一个有效的数独(部分已被填充)不一定是 阅读全文
posted @ 2022-04-20 23:16 aaronthon 阅读(58) 评论(0) 推荐(0) 编辑
摘要:给你两个整数数组 nums1 和 nums2 ,请你以数组形式返回两数组的交集。返回结果中每个元素出现的次数,应与元素在两个数组中都出现的次数一致(如果出现次数不一致,则考虑取较小值)。可以不考虑输出结果的顺序。 示例 1: 输入:nums1 = [1,2,2,1], nums2 = [2,2]输出 阅读全文
posted @ 2022-04-13 22:52 aaronthon 阅读(53) 评论(0) 推荐(0) 编辑
摘要:如果二叉树每个节点都具有相同的值,那么该二叉树就是单值二叉树。 只有给定的树是单值二叉树时,才返回 true;否则返回 false。 示例 1: 输入:[1,1,1,1,1,null,1]输出:true示例 2: 输入:[2,2,2,5,2]输出:false 提示: 给定树的节点数范围是 [1, 1 阅读全文
posted @ 2022-04-13 22:50 aaronthon 阅读(39) 评论(0) 推荐(0) 编辑
摘要:package main import ( "fmt" ) // 节点 type BinaryTreeNode struct { Data int Left *BinaryTreeNode Right *BinaryTreeNode } // 创建节点 func CreateBinaryTree(d 阅读全文
posted @ 2022-04-13 22:26 aaronthon 阅读(121) 评论(0) 推荐(0) 编辑
摘要:将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1: 输入:l1 = [1,2,4], l2 = [1,3,4]输出:[1,1,2,3,4,4]示例 2: 输入:l1 = [], l2 = []输出:[]示例 3: 输入:l1 = [], l2 阅读全文
posted @ 2022-04-11 22:52 aaronthon 阅读(17) 评论(0) 推荐(0) 编辑
摘要:给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。 在「杨辉三角」中,每个数是它左上方和右上方的数的和。 示例 1: 输入: numRows = 5输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]示例 2: 输入: numRows 阅读全文
posted @ 2022-04-10 22:38 aaronthon 阅读(17) 评论(0) 推荐(0) 编辑
摘要:在 MATLAB 中,有一个非常有用的函数 reshape ,它可以将一个 m x n 矩阵重塑为另一个大小不同(r x c)的新矩阵,但保留其原始数据。 给你一个由二维数组 mat 表示的 m x n 矩阵,以及两个正整数 r 和 c ,分别表示想要的重构的矩阵的行数和列数。 重构后的矩阵需要将原 阅读全文
posted @ 2022-04-10 22:06 aaronthon 阅读(69) 评论(0) 推荐(0) 编辑
摘要:给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 阅读全文
posted @ 2022-04-07 22:59 aaronthon 阅读(64) 评论(0) 推荐(0) 编辑
摘要:给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。 注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 阅读全文
posted @ 2022-04-01 20:30 aaronthon 阅读(49) 评论(0) 推荐(0) 编辑
摘要:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可以按任意顺序返回答案。 示例 1: 输入:nums = [2,7, 阅读全文
posted @ 2022-03-30 23:20 aaronthon 阅读(30) 评论(0) 推荐(0) 编辑
摘要:给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 子数组 是数组中的一个连续部分。 示例 1: 输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。示例 2: 阅读全文
posted @ 2022-03-30 23:20 aaronthon 阅读(43) 评论(0) 推荐(0) 编辑
摘要:给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。 func containsDuplicate(nums []int) bool { mid := make(map[int]struct{}) for _, v := 阅读全文
posted @ 2022-03-24 21:48 aaronthon 阅读(54) 评论(0) 推荐(0) 编辑
摘要:题目描述 把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。 解答 丑数的正整数集合,比如2,3,5,2*2,2*3,2*5,3*5,2*2*2.。。。 # codin 阅读全文
posted @ 2020-10-16 19:57 aaronthon 阅读(92) 评论(0) 推荐(0) 编辑
摘要:题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。 解答 第一步,递归,找出所有的组合结果; 第二部,找出最小组合的值。 # coding:utf-8 class 阅读全文
posted @ 2020-10-15 13:54 aaronthon 阅读(160) 评论(0) 推荐(0) 编辑
摘要:题目描述 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1 阅读全文
posted @ 2020-10-14 20:15 aaronthon 阅读(58) 评论(0) 推荐(0) 编辑
摘要:题目描述 输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。 解答 先排序,再返回最小的k个数 # coding:utf-8 class Solution: def GetLeastNumbers_Solution(self, t 阅读全文
posted @ 2020-10-14 15:52 aaronthon 阅读(128) 评论(0) 推荐(0) 编辑
摘要:题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 解答 哈希法 # coding:utf-8 class Solution: d 阅读全文
posted @ 2020-10-14 15:36 aaronthon 阅读(68) 评论(0) 推荐(0) 编辑
摘要:题目描述 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则按字典序打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 输入描述: 输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。 解答 递归 # cod 阅读全文
posted @ 2020-10-14 15:18 aaronthon 阅读(220) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示