歧义 字面 数组 字符串

2488. 统计中位数为 K 的子数组

题目链接:2488. 统计中位数为 K 的子数组 方法:前缀和 + 哈希 解题思路 根据题意可知,在$k$是中位数的子数组中,比$k$大的数 $-$ 比$k$小的数 $=$ $0$ || $1$。那么将两种状态,小于$k$置$-1$,大于$k$置$+1$,计算数组的前缀和$s$。 由于子数组要包含$ ......
中位数 数组 2488

C语言字符串的使用

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

剑指 Offer 51. 数组中的逆序对

题目链接:剑指 Offer 51. 数组中的逆序对 方法一:归并排序 解题思路 逆序对:即后面的数大于前面的数; 归并排序: 先分,在此过程中会先递归的将序列分为一段一段序列,并且每段序列之间的先后顺序是不变的。 再治,也即归并,归并的过程中会将两段序列进行比较$(A,B,B在A的后面)$,当出现$ ......
逆序 数组 Offer 51

108. 将有序数组转换为二叉搜索树

题目链接:108. 将有序数组转换为二叉搜索树 方法:递归建树 解题思路 每次选取中间的元素作为根节点,递归创建左右子树,就可以保证左右子树的高度差绝对值不超过1 代码 /** * Definition for a binary tree node. * struct TreeNode { * in ......
数组 108

1590. 使数组和能被 P 整除

题目链接:1590. 使数组和能被 P 整除 方法:前缀和 + 哈希 解题思路 (1)要求$(sum - sunSum)$ % $p = 0$,即要求 $[sum - (s[j] - s[i])]$ % $p = 0$, 即 $sum$ % $p = (s[j] - s[i])$ % $p$,即 $ ......
数组 1590

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

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

二维数组

在刷力扣题目是会遇到这种情况 int** generate(int numRows, int* returnSize, int** returnColumnSizes){ } int numRows:表示这传入的是一个数。 int* returnSize:表示这传入的是一个数的地址。 int** r ......
数组

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

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

字符串链接

代码参考: 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

1144. 递减元素使数组呈锯齿状

题目链接:1144. 递减元素使数组呈锯齿状 方法:找规律 + 模拟 解题思路 对于一个整数数组 $nums$,可以转换为题目中两种锯齿数组,对于两种情况的转换取最小值。 并且由于操作只能将一个元素减1,因此: 对于第1种情况,只用下标为奇数的元素需要减小到比两边最小值小1; 对于第2种情况,只用下 ......
锯齿状 锯齿 数组 元素 1144

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

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

数组扁平化

var arr = [ { id: 1, title: '我是1目录', children: [ { id: 11, title: '我是1-1目录', children: [ { id: 111, title: '我是1-1-1目录', children: [] } ] }, { id: 12, ......
扁平 数组

Python 进阶指南(编程轻松进阶):十一、注释、文档字符串和类型提示

原文:http://inventwithpython.com/beyond/chapter11.html 源代码中的注释和文档可能和代码一样重要。原因是软件是永远不会完成的;无论是添加新功能还是修复错误,您总是需要做出改变。但是你不能改变代码,除非你理解它,所以保持它可读是很重要的。正如计算机科学家 ......
字符串 注释 字符 类型 文档

【Java】数组

数组是编程语言中常见的数据结构,用来存储一组相同数据类型的数据,可以通过整型索引访问数组中的每一个值。需要注意,同一个数组中存储的所有元素的数据类型必须相同。 根据数组存放元素的组织结构,可将数组分为一维数组、二维数组以及多维(三维及以上)。 创建数组: data_type[ ]varName; d ......
数组 Java

JavaScript 数组笔记

添加和删除数组项 添加 push() **push()**方法:向数组的末尾添加一个或多个元素,并返回修改后的数组长度。 语法: arr.push(element1[, ...[, elementN]]) 参数: element1, ..., elementN:要添加到数组末尾的元素。 示例: co ......
数组 JavaScript 笔记

HJ71_字符串通配符_多维递归

思路:1、对比字符最后一个,对比字符倒数第二个,一致对比到最后一个,如此递归。 2、该题符合多维递归,回溯判断。 遇到“*”通配符时,列举三种不同参数传递的递归情况,分叉递归以达到穷举的效果。(回溯) 3、结束条件:两字符串均为空,不计算“*”字符 具体,如代码所示。 #*只能匹配数字或字母0个或无 ......
通配符 字符串 字符 HJ 71

二维数组的初始化

⑴ 分行进行初始化 int a[2][3]={ {1,2,3},{4,5,6}}; 在{ }内部再用{ }把各行分开,第一对{ }中的初值1,2,3是0行的3个元素的初值。第二对{ }中的初值4,5,6是1行的3个元素的初值。相当于执 行如下语句: int a[2][3]; a[0][0]=1;a[ ......
数组

判断字符串是不是正则表达式

:rules="[ { required: true, trigger: 'blur', validator: this.checkCanonical }, ]" checkCanonical (rule, value, callback) { if (value) { let isReg = tr ......
正则 表达式 字符串 字符

数组模拟单向队列的思路及代码

JAVA实现数组模拟单向队列的思路及代码 一、什么是队列? 队列是一种特殊的线性表 ,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。 进行插入操作的端称为队尾,进行删除操作的端称为队头。 队列中没有元素时,称为 ......
队列 数组 单向 思路 代码

数组模拟环形队列的思路及代码

JAVA实现数组模拟环形队列的思路及代码 前言 在对Java实现数组模拟队列零了解的情况下,建议先去阅读《JAVA实现数组模拟单向队列的思路及代码》一文,可以辅助理解本文核心思想。 一、环形数组队列 实现:让数组达到复用的效果,即:当我们从数组队列中取出了数据,那取出数据后后这个空间可以再次使用。 ......
环形 队列 数组 思路 代码

二维数组与稀疏数组之间的转换

JAVA实现二维数组与稀疏数组之间的转换 一、什么是稀疏数组? 稀疏数组(Sparse array) ,所谓稀疏数组就是数组中大部分的内容值都未被使用(或都为零),在数组中仅有少部分的空间使用。因此造成内存空间的浪费,为了节省内存空间,并且不影响数组中原有的内容值,我们可以采用一种压缩的方式来表示稀 ......
数组 之间

JavaScript 有效的字符串方法

本文内容部分截取自该网站,不同部分则为本人笔记。 获得字符串的长度 let browserType = 'mozilla'; browserType.length; 用处 检索特定字符串字符 // 检索字符串最后一个字符 browserType[browserType.length-1]; 在字符串 ......
字符串 JavaScript 字符 方法

剑指offer66(Java)-构建乘积数组(中等)

题目: 给定一个数组 A[0,1,…,n-1],请构建一个数组 B[0,1,…,n-1],其中 B[i] 的值是数组 A 中除了下标 i 以外的元素的积, 即 B[i]=A[0]×A[1]×…×A[i-1]×A[i+1]×…×A[n-1]。不能使用除法。 示例: 输入: [1,2,3,4,5]输出: ......
乘积 数组 offer Java 66

剑指offer03(Java)-数组中重复的数字(简单)

题目: 找出数组中重复的数字。 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 示例 1: 输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3 限 ......
数组 数字 offer Java 03

vs调试“字符串中字符无效”处理办法

在使用VS2019调试代码时,查看变量值时,utf8格式字符串不能正常显示,需要在变量名后手动添加",s8",就能正常查看字符啦。 总结如下: ,s8:将字符串转成unicode展示 ,数字 将变量拆分为数组显示, 数字是要显示多少位, 此法对const char*这类原始字符串非常有用 ,x 16 ......
字符 字符串 办法

26. 删除有序数组中的重复项 & 80. 删除有序数组中的重复项 II

力扣题目链接(26) 给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。 由于在某些语言中不能改变数组的长度,所以必须将结果放在数组nums的第一部分。更规范地说,如果在删除重复项之后有 k  ......
数组 amp 26 80 II