字符 头尾 字符串 序列

python 提取字符中的数字

一、isdigit()函数 isdigit()函数是检测输入字符串是否只由数字组成。如果字符串只包含数字则返回 True 否则返回 False。 1 2 3 4 5 6 7 8 9 10 11 dream = "123456" print(dream.isdigit()) # 返回:True dre ......
字符 数字 python

提取长字符串

问题:从长字符串中提取“eventTime”和“neUID”之间的字符串。 字符串内容为: {"alarmSeq":24374594,"alarmTitle":"CELL OPERATION DEGRADED","alarmStatus":1,"alarmType":"QUALITYOFSERVIC ......
字符串 字符

提取字符

问题:提取汉字“线”和符号“_”之间的数字,及汉字“线”之前的字母(如果有) 函数公式解决: =MID(A1,FIND("线",A1)+1,FIND("_",A1)-FIND("线",A1)-1)&MIDB(A1,SEARCHB("?线",A1&"1线"),1) FIND("线",A1)找“线”在A ......
字符

PAT Basic 1078. 字符串压缩与解压

PAT Basic 1078. 字符串压缩与解压 1. 题目描述: 文本压缩有很多种方法,这里我们只考虑最简单的一种:把由相同字符组成的一个连续的片段用这个字符和片段中含有这个字符的个数来表示。例如 ccccc 就用 5c 来表示。如果字符没有重复,就原样输出。例如 aba 压缩后仍然是 aba。 ......
字符串 字符 Basic 1078 PAT

java基础-序列化和拷贝

1.序列化 1.1.定义 如果我们需要持久化Java对象,或者在⽹络传输Java对象,这些场景都需要⽤到序列化,简单来说序列化就是将数据结构或对象转换成⼆进制字节流的过程,反序列化就是将在序列化过程中所⽣成的⼆进制字节流转换成数据结构或者对象的过程 对于Java这种⾯向对象编程语⾔来说,我们序列化的 ......
序列 拷贝 基础 java

16进制字符串转byte

1 public class HexConverUtils { 2 3 /** 4 * 16进制字符集 5 */ 6 private static final char HEX_DIGITS[] = {'0', '1', '2', '3', '4', '5', 7 '6', '7', '8', '9 ......
进制 字符串 字符 byte

python 十六进制转换字符

a = b'\xE6\x88\x91\xE6\x98\xAF\xE8\xAF\xB7\xE6\xB1\x82'print(a.decode('utf-8').encode('utf-8'))print(a.decode('gbk').encode('gbk'))print(a.decode(enco ......
十六进制 字符 python

2609. 最长平衡子字符串

题目链接:2609. 最长平衡子字符串 方法:模拟 解题思路 统计当前$0$和$1$的数量$cnt0$,$cnt1$,如果当前字符为'$0$',且$1$的数量不为$0$,说明$0$前面出现$1$,则重置$cnt0 = 1$,$cnt1 = 0$。每次计算当前的最大值。 代码 class Soluti ......
字符串 字符 2609

2606 找到最大开销的子字符串

题目链接:2606. 找到最大开销的子字符串 方法:动态规划 解题思路 实际是:子数组最大和 初始化每个字母的价值,保存在vector<int> value(26)中; 设$dp[i]$表示以$s[i]$结尾的子字符串的最大开销,那么就可以使得dp[i + 1]和dp[i]联系起来,有两种情况: 将 ......
开销 字符串 字符 2606

1092. 最短公共超序列

题目链接:1092. 最短公共超序列 方法一:转换为lcs(最长公共子序列)问题进行求解 解题思路 先得到两个字符串$lcs$,然后再计算$ans$。 $lcs$的获取:最长公共子序列 编辑距离【基础算法精讲 19】 动态规划的$dp$数组在本题有两种实现方式 (1)vector<vector<st ......
序列 1092

剑指 Offer 57 - II. 和为s的连续正数序列

题目链接:剑指 Offer 57 - II. 和为s的连续正数序列 方法一:同向双指针 解题思路 使用两个双指针维护一个窗口,设窗口中元素的和为$curSum$。当$curSum > target$时,左指针右移一位;当$curSum < target$时,右指针右移一位;当$curSum == t ......
正数 序列 Offer 57 II

剑指 Offer 48. 最长不含重复字符的子字符串

题目链接:剑指 Offer 48. 最长不含重复字符的子字符串 方法:同向双指针 解题思路 初始化l = 0, r = 0; 右指针右移,直到[l, r]之间出现重复字符,然后将左指针右移,直到[l, r]之间没有重复字符; 即保证[l, r]窗口无重复字符,然后计算最大的窗口长度。 代码 clas ......
字符 字符串 Offer 48

剑指 Offer 46. 把数字翻译成字符串

题目链接:剑指 Offer 46. 把数字翻译成字符串 方法:回溯、动态规划 解题思路 动态规划是回溯中“归”的过程; 思考回溯: (1)将$num$转换为字符串$s$; (2)对于当前位置$i$,可能有两种操作,将$s[i] => 字符$ 或 将$s[i, i + 1] => 字符$,即$dfs( ......
字符串 字符 数字 Offer 46

1032. 字符流

题目链接:1032. 字符流 方法:字典树 解题思路 理解题意:每一次查询是对从最开始到当前的字符组成的字符串$str$查询$words$数组中是否有字符串是$str$的后缀; 对于字符串的查找使用字典树,每次查询的时间复杂度为$O(L),L = max{word.length()}$,大大降低查找 ......
字符 1032

剑指 Offer 44. 数字序列中某一位的数字

题目链接:剑指 Offer 44. 数字序列中某一位的数字 方法:找规律 解题思路 找第$n$位对应的数为几位数; 找该数的具体值; 找第$n$位在该数中的第几位。 {:style="width:500px"} 代码 class Solution { public: int findNthDigit ......
数字 序列 Offer 44

剑指 Offer 37. 序列化二叉树

题目链接:剑指 Offer 37. 序列化二叉树 取巧做法 class Codec { private: TreeNode* root; public: // Encodes a tree to a single string. string serialize(TreeNode* root) { ......
序列 Offer 37

1625. 执行操作后字典序最小的字符串

题目链接:1625. 执行操作后字典序最小的字符串 方法:bfs暴力搜索 解题思路 初始化队列$q$,若$q$不为空,取队首字符串和$ans$进行比较,取其中字典序小的字符串,然后队首字符串对于两种操作可以生成两个字符串,将其中未出现过(即未遍历过)的字符串加入$q$中,继续循环,直到队列为空,返回 ......
字符串 字典 字符 1625

1616. 分割两个字符串得到回文串

题目链接:1616. 分割两个字符串得到回文串 方法:模拟 + 双指针 解题思路 题目要求,找一个合适的下标 $idx$ 将 $a$ 分割为 $a[0, idx]$ 和 $a[idx + 1, n - 1]$,同样的 $b$ 分割为 $b[0, idx]$ 和 $b[idx + 1, n - 1]$ ......
回文 字符串 字符 两个 1616

2389. 和有限的最长子序列

题目链接:2389. 和有限的最长子序列 方法:前缀和 + 二分查找 解题思路 根据题意,子序列与$nums$数组的元素顺序无关,因此可以先对$nums$从小到大排序,并计算前缀和$nums[i] += nums[i - 1]$,此时的$nums[i]$表示原来nums数组$[0, i]$的区间和。 ......
序列 有限 2389

剑指 Offer 33. 二叉搜索树的后序遍历序列

题目链接:剑指 Offer 33. 二叉搜索树的后序遍历序列 方法:分治 解题思路 首先假设该序列能够构成某个二叉搜索树的后序遍历序列,那么这个序列会被分成3个部分:左子树序列,右子树序列,父节点,其中左右子树节点数可能为0; 现在就可以检查该序列是否符合这个规律,然后递归的判断子树是否符合规律。 ......
序列 Offer 33

C语言字符串的使用

做题常常遇到和字符串相关的,发现自己对《字符串》和《字符数组》有误会,因为他们的声明太像了,我会搞混。于是我在DevC++上尝试了9种不同的声明方式,想看看什么时候才算是有效的字符串声明,都是我当前水平可能遇到的。 #include <stdio.h> #include <string.h> /* ......
字符串 字符 语言

剑指 Offer 20. 表示数值的字符串

题目链接:剑指 Offer 20. 表示数值的字符串 方法:模拟 解题思路 根据题意模拟,详情见代码注释。 代码 class Solution { public: bool isDecimal(string s){ int first_symbol = s.find_first_of('.'); / ......
字符串 数值 字符 Offer 20

misc | 解决windows cmd不能正确显示\033彩色字符

misc | 解决windows cmd不能正确显示\033彩色字符 今天重装winpwn结果显示的是乱码,很影响,搜了一下发现可以安装一个工具来解决。 参考:https://www.cnblogs.com/naiij/p/9772584.html 工具:https://github.com/ado ......
字符 彩色 windows misc cmd

自定义序列化器类

@Serialization 是一个自定义装饰器,通常用于序列化 Python 对象。 使用 @Serialization 装饰器可以将一个类转换为可序列化的对象,这样就可以将其存储到文件或通过网络传输。 下面是一个使用 @Serialization 装饰器的示例: import json def ......
序列

字符串链接

代码参考: use ddbb go DECLARE @PwNoLinkStr VARCHAR(1000) SELECT @PwNoLinkStr = ISNULL(@PwNoLinkStr+',','')+PwNo FROM DaFen; print @PwNoLinkStr ......
字符串 字符 链接

HJ45_名字的漂亮度_贪心(字符串字符次数排序)_附:字典排序

思路: 每个字母都有一个漂亮度1-26。每个字母漂亮度不相同忽略大小写,字符串漂亮度是字母漂亮度总和。取次数最多的字符漂亮度最大,其他依次次大。 #贪心。先排序从大到小,后计算整体漂亮度。从局部最优到整体最优,为贪心算法。 代码: 1 from collections import Counter ......
字符 字符串 亮度 字典 次数

1653. 使字符串平衡的最少删除次数

题目链接:1653. 使字符串平衡的最少删除次数 方法:动态规划 解题思路 对于字符串$s$,设使得字符串$s[0, i]$平衡的最小删除次数为$dp[i]$。 若$s[0, n - 2]$为平衡字符串,当$s[n-1]==b$时,则$dp[n-1] = dp[n-2]$;当$s[n-1]==a$时 ......
字符串 字符 次数 1653

面试题 05.02. 二进制数转字符串

题目链接:面试题 05.02. 二进制数转字符串 方法:找规律 解题思路 (1)题目要求:将一个$0-1$之间的实数通过二进制进行表示,并通过字符串形式输出。 (2)由于二进制的小数只能表示$\frac{1}{2} \frac{1}{4} \frac{1}{8} ... \frac{1}{2^n}$ ......
二进制 字符串 字符 05 02

HJ52_计算字符串的编辑距离_动态规划_动态规划可视化

思路: 该题目符合最优解拥有最优子解,符合动态规划算法要求. 2 思路:操作方法有3种,替换、插入、删除。把a字符串编辑成b字符串的距离。 3 假设空字符串开始编辑作为bottom 边界。 4 a字符串作为深度,b作为宽度。 5 沿宽度遍历为add,沿深度遍历为delete,斜角为change 6 ......
动态 字符串 字符 HJ 52

1247. 交换字符使得字符串相同

题目链接:[1247. 交换字符使得字符串相同] 方法:找规律 解题思路 由于只能两个字符串之间交换字符,单个字符串内不允许交换,因此如果只有一个字符对不相同,那么一定无法通过交换变为相同字符串,同理当不相同的字符对为奇数时,也无法通过交换变为相同字符。 当不相同的字符对数为偶数时,现在考虑以下几种 ......
字符 字符串 1247