字符串
文章平均质量分 61
颜值博主
这个作者很懒,什么都没留下…
展开
-
Go 学习笔记
给定一个字符串,请将字符串里的字符按照出现的频率降序排列。func frequencySort(s string) string { m := make(map[byte]int) for i := range s { m[s[i]]++ } type pair struct { v byte cnt int } pairs := make([]pair, len(m)) for i, v := range m { pairs = append(pairs, pair原创 2021-07-03 10:21:01 · 171 阅读 · 0 评论 -
携程2021.3.4笔试
第一道:字符串处理对于(+ 8 3 2)(* 8 ( - 5 4) 3)计算其输出结果第二道:最大最小利连续子数组和(二分)对于一数组[1,2,3,4,5,6,7,8,9],分成连续的n份,找到其最小子数组和的最大值#include <map> #include <cmath> #include <queue> #include <cstdio> #include <string> #include原创 2021-03-04 21:54:58 · 559 阅读 · 1 评论 -
字典树使用
面试题 17.13. 恢复空格难度中等169哦,不!你不小心把一个长篇文章中的空格、标点都删掉了,并且大写也弄成了小写。像句子"I reset the computer. It still didn’t boot!"已经变成了"iresetthecomputeritstilldidntboot"。在处理标点符号和大小写之前,你得先把它断成词语。当然了,你有一本厚厚的词典dictionary,不过,有些词没在词典里。假设文章用sentence表示,设计一个算法,把文章断开,要求未识别的字符最少,返回未原创 2021-03-01 15:11:08 · 162 阅读 · 0 评论 -
395. 至少有K个重复字符的最长子串(字符串分割)
395. 至少有K个重复字符的最长子串难度中等351给你一个字符串s和一个整数k,请你找出s中的最长子串,要求该子串中的每一字符出现次数都不少于k。返回这一子串的长度。示例 1:输入:s = "aaabb", k = 3输出:3解释:最长子串为 "aaa" ,其中 'a' 重复了 3 次。示例 2:输入:s = "ababbc", k = 2输出:5解释:最长子串为 "ababb" ,其中 'a' 重复了 2 次, 'b' 重复了 3 次。提示:...原创 2021-02-27 14:22:15 · 277 阅读 · 0 评论 -
1208. 尽可能使字符串相等(滑动窗判断)
难度中等给你两个长度相同的字符串,s和t。将s中的第i个字符变到t中的第i个字符需要|s[i] - t[i]|的开销(开销可能为 0),也就是两个字符的 ASCII 码值的差的绝对值。用于变更字符串的最大预算是maxCost。在转化字符串时,总开销应当小于等于该预算,这也意味着字符串的转化可能是不完全的。如果你可以将s的子字符串转化为它在t中对应的子字符串,则返回可以转化的最大长度。如果s中没有子字符串可以转化成t中对应的子字符串,则返回0。...原创 2021-02-05 11:29:41 · 191 阅读 · 0 评论 -
5666. 回文串分割 IV(最长回文子串、回文子序列)
题目难度Hard给你一个字符串s,如果可以将它分割成三个非空回文子字符串,那么返回true,否则返回false。当一个字符串正着读和反着读是一模一样的,就称其为回文字符串。示例 1:输入:s = "abcbdd"输出:true解释:"abcbdd" = "a" + "bcb" + "dd",三个子字符串都是回文的。示例 2:输入:s = "bcbddxy"输出:false解释:s 没办法被分割成 3 个回文子字符串。提示:3 <= s...原创 2021-01-31 14:22:48 · 462 阅读 · 0 评论 -
5537. 分割两个字符串得到回文串
给你两个字符串a和b,它们长度相同。请你选择一个下标,将两个字符串都在相同的下标分割开。由a可以得到两个字符串:aprefix和asuffix,满足a = aprefix+ asuffix,同理,由b可以得到两个字符串bprefix和bsuffix,满足b = bprefix+ bsuffix。请你判断aprefix+ bsuffix或者bprefix+ asuffix能否构成回文串。当你将一个字符串s分割成sprefix和ssuff...原创 2020-10-11 11:51:06 · 279 阅读 · 0 评论 -
929. 独特的电子邮件地址(Set、哈希集合、无序哈希)
难度简单每封电子邮件都由一个本地名称和一个域名组成,以 @ 符号分隔。例如,在alice@leetcode.com中,alice是本地名称,而leetcode.com是域名。除了小写字母,这些电子邮件还可能包含'.'或'+'。如果在电子邮件地址的本地名称部分中的某些字符之间添加句点('.'),则发往那里的邮件将会转发到本地名称中没有点的同一地址。例如,"alice.z@leetcode.com”和“alicez@leetcode.com”会转发到同一电子邮件地址。 (请...原创 2020-09-25 21:04:44 · 647 阅读 · 0 评论 -
1178. 猜字谜(Leetcode)
难度困难外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧。字谜的迷面puzzle按字符串形式给出,如果一个单词word符合下面两个条件,那么它就可以算作谜底:单词word中包含谜面puzzle的第一个字母。 单词word中的每一个字母都可以在谜面puzzle中找到。 例如,如果字谜的谜面是 "abcdefg",那么可以作为谜底的单词有 "faced", "cabbage", 和 "baggage";而 "beefed"(不含字母 "a")以及"bas...原创 2020-08-31 11:06:18 · 321 阅读 · 0 评论 -
十进制至二进制字符串转换
string decToBin(int dec) { string res; for (int i = 0; i < 32; i++) { res = (char)((bool)(dec & (1 << i)) + '0') + res; } return res; }原创 2020-08-30 10:56:46 · 187 阅读 · 0 评论 -
949. 给定数字能组成的最大时间(数字转字符串)
949. 给定数字能组成的最大时间难度简单42给定一个由 4 位数字组成的数组,返回可以设置的符合 24 小时制的最大时间。最小的 24 小时制时间是00:00,而最大的是23:59。从 00:00 (午夜)开始算起,过得越久,时间越大。以长度为 5 的字符串返回答案。如果不能确定有效时间,则返回空字符串。示例 1:输入:[1,2,3,4]输出:"23:41"示例 2:输入:[5,5,5,5]输出:""提示:A.length == 4 0...原创 2020-07-05 10:19:28 · 350 阅读 · 0 评论 -
面试题46. 把数字翻译成字符串(Leetcode)
给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。示例 1:输入: 12258输出: 5解释: 12258有5种不同的翻译,分别是"bccfi", "bwfi", "bczi", "mcfi"和"mzi"提示:0 <= num < 2^31class Solution { int rec.原创 2020-06-09 11:17:56 · 300 阅读 · 0 评论 -
5367. 最长快乐前缀(181周赛,KMP)
「快乐前缀」是在原字符串中既是非空 前缀也是后缀(不包括原字符串自身)的字符串。给你一个字符串 s,请你返回它的 最长快乐前缀。如果不存在满足题意的前缀,则返回一个空字符串。示例 1:输入:s = "level"输出:"l"解释:不包括 s 自己,一共有 4 个前缀("l", "le", "lev", "leve")和 4 个后缀("l", "el", "vel", "eve...原创 2020-03-22 13:08:22 · 368 阅读 · 0 评论 -
415. 字符串相加(Leetcode)
415. 字符串相加难度简单137给定两个字符串形式的非负整数num1和num2,计算它们的和。注意:num1和num2的长度都小于 5100. num1和num2都只包含数字0-9. num1和num2都不包含任何前导零。 你不能使用任何內建 BigInteger 库,也不能直接将输入的字符串转换为整数形式。class Solution {...原创 2020-03-02 12:52:49 · 124 阅读 · 0 评论 -
stringstream流应用(Leetcode面试题58 - I. 翻转单词顺序)
输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如输入字符串"I am a student. ",则输出"student. a am I"。示例 1:输入: "the sky is blue"输出:"blue is sky the"示例 2:输入: " hello world! "输出:"world! hel...原创 2020-02-17 17:52:03 · 295 阅读 · 0 评论 -
Leetcode 二进制求和
给定两个二进制字符串,返回他们的和(用二进制表示)。输入为非空字符串且只包含数字1和0。示例1:输入: a = "11", b = "1"输出: "100"示例2:输入: a = "1010", b = "1011"输出: "10101" 第一个思路是将二进制转换为整型,相加后在转换为二进制,但是对于字符串特别长的会出现错误!class Solut...原创 2019-08-04 10:06:33 · 144 阅读 · 0 评论 -
Leetcode 5069. 按字典序排在最后的子串 (150周赛)
5069.按字典序排在最后的子串给你一个字符串s,找出它的所有子串并按字典序排列,返回排在最后的那个子串。示例 1:输入:"abab"输出:"bab"解释:我们可以找出 7 个子串 ["a", "ab", "aba", "abab", "b", "ba", "bab"]。按字典序排在最后的子串是 "bab"。示例2:输入:"leetcode"输出:"tcode...原创 2019-08-18 17:59:13 · 918 阅读 · 0 评论 -
201403-3 命令行选项(错误)
试题编号: 201403-3 试题名称: 命令行选项 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 请你写一个命令行分析程序,用以分析给定的命令行里包含哪些选项。每个命令行由若干个字符串组成,它们之间恰好由一个空格分隔。这些字符串中的第一个为该命令行工具的名字,由小写字母组成,你的程序不用对它进行处理。在工...原创 2018-07-24 14:15:05 · 295 阅读 · 0 评论 -
201409-3 字符串匹配
试题编号: 201409-3 试题名称: 字符串匹配 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给出一个字符串和多行文字,在这些文字中找到字符串出现的那些行。你的程序还需支持大小写敏感选项:当选项打开时,表示同一个字母的大写和小写看作不同的字符;当选项关闭时,表示同一个字母的大写和小写看作相同的字符。...原创 2018-07-24 14:21:29 · 117 阅读 · 0 评论 -
201412-3 集合竞价
试题编号: 201412-3 试题名称: 集合竞价 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 某股票交易所请你编写一个程序,根据开盘前客户提交的订单来确定某特定股票的开盘价和开盘成交量。 该程序的输入由很多行构成,每一行为一条记录,记录可能有以下几种: 1. buy p s 表示一个...原创 2018-07-25 08:17:45 · 163 阅读 · 0 评论 -
201503-3 节日
试题编号: 201503-3 试题名称: 节日 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 有一类节日的日期并不是固定的,而是以“a月的第b个星期c”的形式定下来的,比如说母亲节就定为每年的五月的第二个星期日。 现在,给你a,b,c和y1, y2(1850 ≤ y1, y2 ≤ 2050),希望...原创 2018-07-25 08:28:15 · 255 阅读 · 0 评论 -
201803-3 URL映射
试题编号: 201803-3 试题名称: URL映射 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 URL 映射是诸如 Django、Ruby on Rails 等网页框架 (web frameworks) 的一个重要组件。对于从浏览器发来的 HTTP 请求,URL 映射模块会解析请求中的 URL 地址,并...原创 2018-07-27 21:09:08 · 188 阅读 · 0 评论 -
201703-3 Markdown
问题描述 Markdown 是一种很流行的轻量级标记语言(lightweight markup language),广泛用于撰写带格式的文档。例如以下这段文本就是用 Markdown 的语法写成的: 这些用 Markdown 写成的文本,尽管本身是纯文本格式,然而读者可以很容易地看出它的文档结构。同时,还有很多工具可以自动把 Markdown 文本转换成 HTML 甚至 Word、PD...原创 2018-09-06 15:48:07 · 339 阅读 · 0 评论 -
201709-3 JSON查询
问题描述 JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式,可以用来描述半结构化的数据。JSON 格式中的基本单元是值 (value),出于简化的目的本题只涉及 2 种类型的值: * 字符串 (string):字符串是由双引号 " 括起来的一组字符(可以为空)。如果字符串的内容中出现双引号 ",在双引号前面加反斜杠,也就是...原创 2018-09-08 14:58:28 · 223 阅读 · 0 评论 -
201612-3 权限查询
试题编号: 201612-3 试题名称: 权限查询 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 授权 (authorization) 是各类业务系统不可缺少的组成部分,系统用户通过授权机制获得系统中各个模块的操作权限。 本题中的授权机制是这样设计的:每位用户具有若干角色,每种角色具有若干权限。例...原创 2018-09-15 08:19:30 · 166 阅读 · 0 评论 -
201512-3 画图
试题编号: 201512-3 试题名称: 画图 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 用 ASCII 字符来画图是一件有趣的事情,并形成了一门被称为 ASCII Art 的艺术。例如,下图是用 ASCII 字符画出来的 CSPRO 字样。 ..____.____..____..____.....原创 2018-09-16 09:54:18 · 148 阅读 · 0 评论 -
CSP 201903-4 消息传递接口
试题编号: 201903-4 试题名称: 消息传递接口 时间限制: 1.0s 内存限制: 512.0MB 问题描述: #include "pch.h"#include <iostream>#include<iomanip>using namespace std;struct note {...原创 2019-08-02 17:34:55 · 243 阅读 · 0 评论 -
Leetcode 5150. 段式回文(148周赛)
5150.段式回文显示英文描述我的提交返回竞赛用户通过次数102 用户尝试次数120 通过次数116 提交次数241 题目难度Hard段式回文 其实与 一般回文 类似,只不过是最小的单位是 一段字符而不是 单个字母。举个例子,对于一般回文 "abcba" 是回文,而 "volvo" 不是,但如果我们把"volvo" 分为 "vo"、"l"、"vo" 三段,则可以...原创 2019-08-04 15:18:47 · 581 阅读 · 0 评论