编程面试
STURNS
分享与记录
展开
-
leetcode394. 字符串解码
给定一个经过编码的字符串,返回它解码后的字符串。编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数 k ,例如不会出现像 3a 或 2[4] 的输入。示例 1:输入:s = “3[a]2[bc]”输出:“aa原创 2021-01-31 14:06:23 · 107 阅读 · 0 评论 -
对输入的字符串进行排序后输出
链接:https://ac.nowcoder.com/acm/contest/5657/H来源:牛客网题目描述对输入的字符串进行排序后输出打开以下链接可以查看正确的代码输入描述:输入有两行,第一行n第二行是n个空格隔开的字符串输出描述:输出一行排序后的字符串,空格隔开,无结尾空格示例1输入复制5c d a bb e输出复制a bb c d e#include <stdio.h>#include <stdlib.h>struct list;s原创 2021-01-30 00:21:22 · 2099 阅读 · 0 评论 -
【Leetcode】2. 两数相加
给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0开头。示例 1:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.示例 2:输入:l1 = [0], l2 = [0]输出:[0]示例 3:输入:l1 = [9,9...原创 2021-01-25 00:21:54 · 264 阅读 · 0 评论 -
【leetcode】颠倒整数
给定一个范围为 32 位 int 的整数,将其颠倒。例 1:输入: 123输出: 321 例 2:输入: -123输出: -321 例 3:输入: 120输出: 21 注意:!!!假设我们的环境只能处理 32 位 int 范围内的整数。根据这个假设,如果颠倒后的结果超过这个范围,则返回 0。思路:循环将个位十位。。。取出,然后乘以循环乘以10;难点在于判断颠倒之后是否超出INT32的最大最小值。...原创 2018-03-29 14:29:24 · 1126 阅读 · 1 评论 -
[leetcode]旋转图像
给定一个 n × n 的二维矩阵表示一个图像。将图像旋转 90 度(顺时针)。注意:你必须在原矩阵中旋转图像,请不要使用另一个矩阵来旋转图像。例 1:给出的输入矩阵 = [ [1,2,3], [4,5,6], [7,8,9]],旋转输入矩阵,使其变为 :[ [7,4,1], [8,5,2], [9,6,3]] 例 2:给出的输入矩阵 =[ [ 5, 1,...原创 2018-03-28 16:31:31 · 271 阅读 · 0 评论 -
[Leetcode]移动零
给定一个数组 nums, 编写一个函数将所有 0 移动到它的末尾,同时保持非零元素的相对顺序。例如, 定义 nums = [0, 1, 0, 3, 12],调用函数之后, nums 应为 [1, 3, 12, 0, 0]。注意事项:必须在原数组上操作,不要为一个新数组分配额外空间。尽量减少操作总数。 贡献者:特别感谢 @jianchao.li.fighter 用于添加此问题并创建所有测试用例。思路...原创 2018-03-26 15:49:28 · 1050 阅读 · 0 评论 -
【leetcode】验证回文字符串
验证回文字符串给定一个字符串,确定它是否是回文,只考虑字母数字字符和忽略大小写。例如:"A man, a plan, a canal: Panama" 是回文字符串。"race a car" 不是回文字符串。注意:你有考虑过这个字符串可能是空的吗? 在面试中这是一个很好的问题。针对此题目,我们将空字符串定义为有效的回文字符串。思路:双指针,一头一尾,遍历字符串, 验证头尾指针所指向字符是否相等,发...原创 2018-03-30 19:26:49 · 701 阅读 · 0 评论 -
【leetcode】 字符串中的第一个唯一字符
给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。案例:s = "leetcode"返回 0.s = "loveleetcode",返回 2. 注意事项:您可以假定该字符串只包含小写字母。思路:有很多种解法1.新建一个256位的int数组(一定要Int),遍历这个字符串,以当前字符为数组下标,使对应的数+1.完了之后,再次遍历这个字符串,如果遇到这个整...原创 2018-03-29 20:21:48 · 3308 阅读 · 0 评论 -
[leetcode]2018.3.22 只出现一次的数字
只出现一次的数字给定一个整数数组,除了某个元素外其余元素均出现两次。请找出这个只出现一次的元素。 备注:你的算法应该是一个线性时间复杂度。 你可以不用额外空间来实现它吗?---------------------------------------------------------------------------思路:1.直接解法 先进行排序,然后使用双指针遍历。时间复杂度不符合。----...原创 2018-03-22 15:57:32 · 303 阅读 · 0 评论 -
[LeetCode]2018.3.22旋转数组
旋转数组将包含 n 个元素的数组向右旋转 k 步。例如,如果 n = 7 , k = 3,给定数组 [1,2,3,4,5,6,7] ,向右旋转后的结果为 [5,6,7,1,2,3,4]。注意:尽可能找到更多的解决方案,这里最少有三种不同的方法解决这个问题。[显示提示]提示:要求空间复杂度为 O(1)关联的问题: 反转字符串中的单词 II致谢:特别感谢 @Freezen 添加此问题并创建所有...原创 2018-03-22 14:59:57 · 452 阅读 · 0 评论 -
[Leetcode]2018.3.22买卖股票的最佳时机 II
买卖股票的最佳时机 II假设有一个数组,它的第 i 个元素是一个给定的股票在第 i 天的价格。设计一个算法来找到最大的利润。你可以完成尽可能多的交易(多次买卖股票)。然而,你不能同时参与多个交易(你必须在再次购买前出售股票)。思路:刚开始以为先要找出最低点和最高点进行交易。然而题目只要求计算最大利润,而且可以进行多次交易。可以假定第i天买,如果第i+1天上涨,则卖出,否则不买。(i=[0,1,2....原创 2018-03-22 14:54:23 · 959 阅读 · 0 评论 -
[LeetCode] 2018.3.22-从排序数组中删除重复项
从排序数组中删除重复项给定一个有序数组,你需要原地删除其中的重复内容,使每个元素只出现一次,并返回新的长度。不要另外定义一个数组,您必须通过用 O(1) 额外内存原地修改输入的数组来做到这一点。示例:给定数组: nums = [1,1,2],你的函数应该返回新长度 2, 并且原数组nums的前两个元素必须是1和2不需要理会新的数组长度后面的元素思路: 1.空间复杂度要求O(1),所以不能通过...原创 2018-03-22 14:46:03 · 171 阅读 · 0 评论