自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(279)
  • 资源 (2)
  • 收藏
  • 关注

原创 腾讯云对象存储工具类 Java代码 即开即用

腾讯云对象存储工具类。

2023-03-23 18:04:46 681

原创 操作系统 计算机操作系统教程笔记

是操作系统对一个正在运行的程序的一种抽象。在一个系统上可以同时运行多个进程,而每个进程都好像在独占地使用硬件。而,则是说一个进程的指令和另一个进程的指令是交错执行的。在大多数系统中,需要运行的进程数是多于可以运行它们的CPU个数的。传统系统在一个时刻只能执行一个程序,而先进的多核处理器同时能够执行多个程序。无论是在单核还是多核系统中,一个CPU看上去都像是在并发地执行多个进程,这是来实现的。操作系统实现这种交错执行的机制称为。

2023-03-23 18:04:13 730 1

原创 软件工程知识点总结 期末总结 wust

软件工程知识点总结 期末总结 wust 软件的定义 软件工程的定义 软件过程 软件开发神话 过程流 瀑布模型

2023-03-23 18:02:10 720

原创 网络安全知识点总结 期末总结

网络安全知识点总结 期末总结 wust 代理技术的缺点:代理速度较路由器慢、代理对用户不透明、对每项服务代理可能要求不同的服务器、代理服务不能保证免受所有协议弱点的限制、代理不能改进底层协议的安全性。26、网络安全的典型技术:物理安全措施、备份技术、审计技术、防病毒技术、入侵检测技术、访问控制技术、终端安全技术、内外网隔离技术、安全性检测技术、数据传输安全技术。38、恶意代码的防范措施:及时更新系统,修补安全漏洞、设置安全策略,限制脚本程序的运行、养成良好的上网习惯、启用防火墙,过滤不必要的服务和系统信息。

2023-03-23 18:01:16 1770 1

原创 网络工程知识点总结

网络工程知识点总结 期末总结 wust 网络设备的安装与系统集成IPv4-6 隧道技术 双协议栈 IPNAT交换机的工作原理:交换机位于0SI参考模型中的第二层(数据链路层),交换机的工作依赖于对MAC地址的识别 (所有的网络设备都有一个唯一的MAC地址,通常是由厂商直接烧录进网卡中)。当交换机从其某个端口收到一个数据包时,先读取包头中的源MAC地址(即发送该数据包的设备网一卡的MAC地址),将该MAC地址和端口对应起来添加到交换机内存里的地址表中;

2023-03-23 17:57:54 632

原创 iOS计算宽高的函数 boundingRectWithSize

如果需要计算一行文字的宽度,则传入的size固定一行的高度,宽度设为MAXFLOAT,就可以得出一行文字所占的宽度。boundingRectWithSize 函数一般固定传入size的宽度,高度设为MAXFLOAT,自动计算宽度。这个函数不支持计算多行文字的宽度,因为宽度本来就不确定,折行的位置也不确定,也就无法计算多行。

2022-09-14 17:44:44 1391

原创 小红取数(动态规划)———面试真题

小红取数时间限制:1秒 空间限制:256M描述小红拿到了一个数组,她想取一些数使得取的数之和尽可能大,但要求这个和必须是 k 的倍数。你能帮帮她吗?输入描述:第一行输入两个正整数 n 和 k第二行输入 n 个正整数 ai1≤n,k≤1031\leq n, k \leq 10^31≤n,k≤1031≤ai≤10101 \leq a_i \leq 10^{10}1≤ai​≤1010输出描述:如果没有合法方案,输出 -1。否则输出最大的和。集合:前i个数组中选择一些数 并且 这些数的和必

2022-06-14 20:06:56 8923 1

原创 乘积为正(动态规划)——3.21美团面试题

乘积为正时间限制: 1000MS内存限制: 65536KB题目描述:小美现在有一个序列,序列中仅包含1和 - 1两种数字。小美现在想要知道,有多少个连续的子序列,序列中的数字乘积为正。输入描述第一行一个正整数n,表示小美手中的序列长度。第二行n个空格隔开的数字,每个数字只能是1和 - 1中的一种。对于80 % 的数据保证1 ...

2022-06-14 18:23:24 372

原创 583. 两个字符串的删除操作(动态规划) - 力扣(LeetCode)

两个字符串的删除操作给定两个单词 word1 和 word2 ,返回使得 word1 和 word2 相同所需的最小步数。每步 可以删除任意一个字符串中的一个字符。示例 1:输入: word1 = “sea”, word2 = “eat”输出: 2解释: 第一步将 “sea” 变为 “ea” ,第二步将 "eat "变为 “ea”示例 2:输入:word1 = “leetcode”, word2 = “etco”输出:4提示:1

2022-06-01 17:33:37 319

原创 516. 最长回文子序列(动态规划) - 力扣(LeetCode)

最长回文子序列给你一个字符串 s ,找出其中最长的回文子序列,并返回该序列的长度。子序列定义为:不改变剩余字符顺序的情况下,删除某些字符或者不删除任何字符形成的一个序列。示例 1:输入:s = “bbbab”输出:4解释:一个可能的最长回文子序列为 “bbbb” 。示例 2:输入:s = “cbbd”输出:2解释:一个可能的最长回文子序列为 “bb” 。集合:dp[i][j]dp[i][j]dp[i][j]表示从 iii 到 jjj 的回文子序列属性:最长的长度集合的划分:按s[i]和s[j

2022-06-01 17:20:28 307

原创 322. 零钱兑换 (三种方法,逐步优化时间复杂度)- 力扣(LeetCode)

零钱兑换给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。你可以认为每种硬币的数量是无限的。示例 1:输入:coins = [1, 2, 5], amount = 11输出:3解释:11 = 5 + 5 + 1题解同一个题目的不同种解法使用 Leetcode 组合总和 的思路因为每个硬币都可以选无数次,那么我们可以使用固定的顺序选择硬币遇到

2022-05-13 13:27:20 673 1

原创 518. 零钱兑换 II(记忆化搜索+排序剪枝、DP动态规划) - 力扣(LeetCode)

零钱兑换 II给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。假设每一种面额的硬币有无限个。题目数据保证结果符合 32 位带符号整数。示例 1:输入:amount = 5, coins = [1, 2, 5]输出:4解释:有四种方式可以凑成总金额:5=55=2+2+15=2+1+1+15=1+1+1+1+1代码AC代码记忆化搜索+排序剪枝class

2022-05-13 12:04:08 231

原创 322. 零钱兑换 (记忆化搜索)- 力扣(LeetCode)

零钱兑换给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。你可以认为每种硬币的数量是无限的。示例 1:输入:coins = [1, 2, 5], amount = 11输出:3解释:11 = 5 + 5 + 1记忆化搜索递归树将能凑成当前金额,使用的最少硬币个数记录下来如果重复计算,就直接拿去记忆化数组中的值class Solution

2022-05-10 20:28:15 251

原创 416. 分割等和子集(记忆化搜索、DP动态规划) - 力扣(LeetCode)

分割等和子集给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。示例 1:输入:nums = [1,5,11,5]输出:true解释:数组可以分割成 [1, 5, 5] 和 [11] 。示例 2:输入:nums = [1,2,3,5]输出:false解释:数组不能分割成两个元素和相等的子集。题解记忆化搜索dp的思路,但是使用的是记忆化搜索一维是数据下标,二维代表的是到此下标时累加到的和我们用二维数组来记录从此时的

2022-05-10 19:50:48 215

原创 18. 四数之和 - 力扣(LeetCode)(双指针、枚举)

四数之和给你一个由 n 个整数组成的数组 nums ,和一个目标值 target 。请你找出并返回满足下述全部条件且不重复的四元组 [nums[a], nums[b], nums[c], nums[d]] (若两个四元组元素一一对应,则认为两个四元组重复):0 <= a, b, c, d < na、b、c 和 d 互不相同nums[a] + nums[b] + nums[c] + nums[d] == target你可以按 任意顺序 返回答案 。题解此题和 三数之和 做法思路相似

2022-04-27 09:39:50 178

原创 213. 打家劫舍 II - 力扣(LeetCode)

打家劫舍 II你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。这个地方所有的房屋都 围成一圈 ,这意味着第一个房屋和最后一个房屋是紧挨着的。同时,相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警 。给定一个代表每个房屋存放金额的非负整数数组,计算你 在不触动警报装置的情况下 ,今晚能够偷窃到的最高金额。示例 1:输入:nums = [2,3,2]输出:3解释:你不能先偷窃 1 号房屋(金额 = 2),然后偷窃 3 号房屋(金额 = 2),

2022-04-07 10:23:16 318

原创 Leetcode 90. 子集 II (dfs搜索)

Leetcode 90. 子集 II给你一个整数数组 nums ,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。返回的解集中,子集可以按 任意顺序 排列。示例 1:输入:nums = [1,2,2]输出:[[],[1],[1,2],[1,2,2],[2],[2,2]]示例 2:输入:nums = [0]输出:[[],[0]]提示:1 <= nums.length <= 10-10 <= nums[i] <= 10题解

2022-04-03 14:39:05 232

原创 572. 另一棵树的子树 - 力扣(LeetCode)(树的哈希)

给你两棵二叉树 root 和 subRoot 。检验 root 中是否包含和 subRoot 具有相同结构和节点值的子树。如果存在,返回 true ;否则,返回 false 。二叉树 tree 的一棵子树包括 tree 的某个节点和这个节点的所有后代节点。tree 也可以看做它自身的一棵子树。示例 1:输入:root = [3,4,5,1,2], subRoot = [4,1,2]输出:true示例 2:输入:root = [3,4,5,1,2,null,null,null,null,0],

2022-04-03 11:47:38 632

原创 Leetcode 1405. 最长快乐字符串(贪心)每日一题

最长快乐字符串如果字符串中不含有任何 ‘aaa’,‘bbb’ 或 ‘ccc’ 这样的字符串作为子串,那么该字符串就是一个「快乐字符串」。给你三个整数 a,b ,c,请你返回 任意一个 满足下列全部条件的字符串 s:s 是一个尽可能长的快乐字符串。s 中 最多 有a 个字母 ‘a’、b 个字母 ‘b’、c 个字母 ‘c’ 。s 中只含有 ‘a’、‘b’ 、‘c’ 三种字母。如果不存在这样的字符串 s ,请返回一个空字符串 “”。示例 1:输入:a = 1, b = 1, c = 7输出:“c

2022-02-07 09:19:57 133

原创 剑指 Offer 59 - I. 滑动窗口的最大值(滑动窗口、单调队列)

剑指 Offer 59 - I. 滑动窗口的最大值给定一个数组 nums 和滑动窗口的大小 k,请找出所有滑动窗口里的最大值。示例:输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3输出: [3,3,5,5,6,7]解释:滑动窗口的位置 最大值[1 3 -1] -3 5 3 6 7 31 [3 -1 -3] 5 3 6 7 31 3 [-1 -3 5] 3 6 7

2022-01-29 15:25:01 834

原创 剑指 Offer 20. 表示数值的字符串(分类讨论)

剑指 Offer 20. 表示数值的字符串请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。数值(按顺序)可以分成以下几个部分:若干空格一个 小数 或者 整数(可选)一个 ‘e’ 或 ‘E’ ,后面跟着一个 整数若干空格小数(按顺序)可以分成以下几个部分:(可选)一个符号字符(’+’ 或 ‘-’)下述格式之一:至少一位数字,后面跟着一个点 ‘.’至少一位数字,后面跟着一个点 ‘.’ ,后面再跟着至少一位数字一个点 ‘.’ ,后面跟着至少一位数字整数(按顺序)可以分成以下几

2022-01-29 14:07:01 98

原创 剑指 Offer 65. 不用加减乘除做加法

剑指 Offer 65. 不用加减乘除做加法写一个函数,求两个整数之和,要求在函数体内不得使用 “+”、“-”、“*”、“/” 四则运算符号。示例:输入: a = 1, b = 1输出: 2提示:a, b 均可能是负数或 0结果不会溢出 32 位整数题解先枚举每种情况ab本位进位0000011010101101本位 a ^ b进位 a & b代码:class Solution {public:

2022-01-28 12:47:20 5428

原创 剑指 Offer 56 - I. 数组中数字出现的次数(位运算题解)

剑指 Offer 56 - I. 数组中数字出现的次数一个整型数组 nums 里除两个数字之外,其他数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。示例 1:输入:nums = [4,1,4,6]输出:[1,6] 或 [6,1]示例 2:输入:nums = [1,2,10,4,1,4,3,3]输出:[2,10] 或 [10,2]限制:2 <= nums.length <= 10000题解先求出两个只出现一次的数字的异或和

2022-01-26 19:54:19 377

原创 Leetcode 215. 数组中的第K个最大元素 (手写快速排序)

Leetcode 215. 数组中的第K个最大元素给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。示例 1:输入: [3,2,1,5,6,4] 和 k = 2输出: 5示例 2:输入: [3,2,3,1,2,4,5,5,6] 和 k = 4输出: 4题解改造快速排序的算法,求得第 k 大的数class Solution {public: int quick_sort(vec

2022-01-18 11:26:28 162

原创 Leetcode 81. 搜索旋转排序数组 II(二分法)

Leetcode 81. 搜索旋转排序数组 II已知存在一个按非降序排列的整数数组 nums ,数组中的值不必互不相同。在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转 ,使数组变为 [nums[k], nums[k+1], …, nums[n-1], nums[0], nums[1], …, nums[k-1]](下标 从 0 开始 计数)。例如, [0,1,2,4,4,4,5,6,6,7] 在下标 5 处经旋转后可能变为 [4

2022-01-18 10:20:03 102

原创 剑指 Offer 12. 矩阵中的路径 (DFS深度优先搜索、回溯法)

剑指 Offer 12. 矩阵中的路径给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。例如,在下面的 3×4 的矩阵中包含单词 “ABCCED”(单词中的字母已标出)。示例 1:输入:board = [[“A”,“B”,“C”,“E”],[“S”,“F”

2022-01-16 14:23:47 174

原创 两种方法实现求链表的环开始的结点(快慢指针、哈希表)—— leetcode 142. 环形链表 II

leetcode 142. 环形链表 II给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为了标识链表的实际情况。不允许修改 链表。示例 1:输入:head = [3,2,0,-4], pos =

2022-01-15 12:53:03 226

原创 LeetCode 1049. 最后一块石头的重量 II (01背包问题)

最后一块石头的重量 II有一堆石头,用整数数组 stones 表示。其中 stones[i] 表示第 i 块石头的重量。每一回合,从中选出任意两块石头,然后将它们一起粉碎。假设石头的重量分别为 x 和 y,且 x <= y。那么粉碎的可能结果如下:如果 x == y,那么两块石头都会被完全粉碎;如果 x != y,那么重量为 x 的石头将会完全粉碎,而重量为 y 的石头新重量为 y-x。最后,最多只会剩下一块 石头。返回此石头 最小的可能重量 。如果没有石头剩下,就返回 0。示例 1:输

2022-01-14 12:03:48 444

原创 友好城市(线性DP、最长上升子序列)————《信息学奥赛一本通》

友好城市Palmia国有一条横贯东西的大河,河有笔直的南北两岸,岸上各有位置各不相同的N个城市。北岸的每个城市有且仅有一个友好城市在南岸,而且不同城市的友好城市不相同。每对友好城市都向政府申请在河上开辟一条直线航道连接两个城市,但是由于河上雾太大,政府决定避免任意两条航道交叉,以避免事故。编程帮助政府做出一些批准和拒绝申请的决定,使得在保证任意两条航线不相交的情况下,被批准的申请尽量多。输入格式第1行,一个整数N,表示城市数。第2行到第n+1行,每行两个整数,中间用1个空格隔开,分别表示南岸和

2022-01-13 12:09:53 128

原创 字节跳动二面算法题 ——leecode 1044. 最长重复子串(字符串哈希、二分法)

最长重复子串给你一个字符串 s ,考虑其所有 重复子串 :即,s 的连续子串,在 s 中出现 2 次或更多次。这些出现之间可能存在重叠。返回 任意一个 具有最长长度的重复子串。如果 s 不含重复子串,那么答案为 “” 。示例 1:输入:s = “banana”输出:“ana”示例 2:输入:s = “abcd”输出:""题解字符串哈希存储字符串,二分法二分要求的最长长度的重复子串的长度,尽量取最右侧的值。set 集合存储字符串哈希值判断是否有字符串重复,如果重复二分返回 true,否则

2022-01-12 17:41:09 450

原创 leetcode 1043. 分隔数组以得到最大和 (动态规划)

分隔数组以得到最大和给你一个整数数组 arr,请你将该数组分隔为长度最多为 k 的一些(连续)子数组。分隔完成后,每个子数组的中的所有值都会变为该子数组中的最大值。返回将数组分隔变换后能够得到的元素最大和。注意,原数组和分隔后的数组对应顺序应当一致,也就是说,你只能选择分隔数组的位置而不能调整数组中的顺序。示例 1:输入:arr = [1,15,7,9,2,5,10], k = 3输出:84解释:因为 k=3 可以分隔成 [1,15,7] [9] [2,5,10],结果为 [15,15,15

2022-01-12 12:11:28 378

原创 打乱字母(贪心、二分)————USACO 2012 December Contest Bronze

打乱字母农夫约翰将按字典序排列的 N 头奶牛的名字列表贴在了牛棚的门上。每个奶牛的名字都由一个长度介于 1 到 20 之间的由小写字母构成的唯一字符串表示。麻烦制造者贝茜将列表中的奶牛名字重新排序打乱了列表。此外,她还对每头奶牛的名字中的字母顺序进行了重新排列(也可能保持不变)。给定修改过后的列表,请帮助约翰确定列表中的每个名字可能出现在原始列表中的最低和最高位置。输入格式第一行包含整数 N。接下来 N 行,按照修改过后列表的顺序,给出了修改过后的奶牛的名字。输出格式共 N 行,第 i

2022-01-10 11:43:31 595

原创 岛(思维题、枚举、离散化)——USACO 2012 US Open Bronze Division

岛每当下雨时,农夫约翰的田地总是被洪水淹没。由于田地不是完全水平的,所以一些地方充满水后,留下了许多被水隔开的“岛”。约翰的田地被描述为由 N 个连续高度值 H1,…,HN 指定的一维场景。假设该场景被无限高的围墙包围着,请考虑暴雨期间发生的情况:最低处首先被水覆盖,形成一些不连贯的岛,随着水位的不断上升,这些岛最终都会被覆盖。一旦水位等于一块田地的高度,那块田地就被认为位于水下。上图显示了一个示例:在左图中,我们只加入了刚好超过 1 单位的水,此时剩下 4 个岛(最大岛屿剩余数量),而在右

2022-01-07 18:18:59 233

原创 拖拉机(双端队列的广搜)——USACO 2012 March Contest Silver Division

拖拉机干了一整天的活,农夫约翰完全忘记了他把拖拉机落在田地中央了。他的奶牛非常调皮,决定对约翰来场恶作剧。她们在田地的不同地方放了 N 捆干草,这样一来,约翰想要开走拖拉机就必须先移除一些干草捆。拖拉机的位置以及 N 捆干草的位置都是二维平面上的整数坐标点。拖拉机的初始位置上没有干草捆。当约翰驾驶拖拉机时,他只能沿平行于坐标轴的方向(北,南,东和西)移动拖拉机,并且拖拉机必须每次移动整数距离。例如,驾驶拖拉机先向北移动 2 单位长度,然后向东移动 3 单位长度。拖拉机无法移动到干草捆占据的位

2022-01-07 16:07:34 496

原创 电路维修(搜索、双端队列BFS)————《算法竞赛进阶指南》

电路维修达达是来自异世界的魔女,她在漫无目的地四处漂流的时候,遇到了善良的少女翰翰,从而被收留在地球上。翰翰的家里有一辆飞行车。有一天飞行车的电路板突然出现了故障,导致无法启动。电路板的整体结构是一个 R 行 C 列的网格(R,C≤500),如下图所示。每个格点都是电线的接点,每个格子都包含一个电子元件。电子元件的主要部分是一个可旋转的、连接一条对角线上的两个接点的短电缆。在旋转之后,它就可以连接另一条对角线的两个接点。电路板左上角的接点接入直流电源,右下角的接点接入飞行车的发动装置。达

2022-01-07 15:43:26 575

原创 从给定原材料中找到所有可以做出的菜(拓扑排序)——leetcode 第 68 场双周赛

从给定原材料中找到所有可以做出的菜你有 n 道不同菜的信息。给你一个字符串数组 recipes 和一个二维字符串数组 ingredients 。第 i 道菜的名字为 recipes[i] ,如果你有它 所有 的原材料 ingredients[i] ,那么你可以 做出 这道菜。一道菜的原材料可能是 另一道 菜,也就是说 ingredients[i] 可能包含 recipes 中另一个字符串。同时给你一个字符串数组 supplies ,它包含你初始时拥有的所有原材料,每一种原材料你都有无限多。请你返回你可

2021-12-26 21:00:22 283

原创 4202. 穿过圆(倍增、LCA、bitset)——AcWing,第31场周赛

穿过圆在一个二维平面上有 n 个点和 m 个圆。点的编号为 1∼n。不存在某个点恰好在某个圆的边上的情况。任意两个圆之间没有公共点。现在,请你回答 k 个询问。每个询问给定两个点 ai,bi,并请你回答从点 ai 出发沿任意连续路径到达点 bi,至少需要穿过多少个圆。输入格式第一行包含三个整数 n,m,k。接下来 n 行,其中第 i 行包含两个整数 xi,yi,表示点 i 的坐标为 (xi,yi)。注意,点的位置可以重合。再接下来 m 行,其中第 i 行包含三个整数 ri,cxi,cyi

2021-12-26 17:49:40 292

原创 01数(枚举)——Acwing第 31 场周赛

01数如果一个正整数,其各个数位上的数字均满足要么是 0,要么是 1,则称该数字为 01 数。例如,1 和 10 都是 01 数。给定一个整数 n。请你计算,1∼n 中有多少个 01 数。输入格式一行,一个整数 n。输出格式一个整数,表示 01 数的数量。数据范围前六个测试点满足 1≤n≤100。所有测试点满足 1≤n≤109。输入样例:10输出样例:2题解数据范围从 1到1e9 一共10位数用枚举法枚举1~1024内的所有数,因为1024等于2^10,所以把枚举过程中的

2021-12-26 16:49:42 638

原创 剑指 Offer 48. 最长不含重复字符的子字符串【双指针】

剑指 Offer 48. 最长不含重复字符的子字符串请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是 子

2021-12-23 11:47:08 172

原创 剑指 Offer 46. 把数字翻译成字符串 【动态规划】

剑指 Offer 46. 把数字翻译成字符串给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。示例 1:输入: 12258输出: 5解释: 12258有5种不同的翻译,分别是"bccfi", “bwfi”, “bczi”, “mcfi"和"mzi”提示:0 <= num < 231动态规划class

2021-12-23 11:19:10 87

sg_input_rules.xlsx

云电脑配置安全组策略,腾讯云,阿里云,云电脑配置安全组策略,云电脑配置安全组策略,云电脑配置安全组策略,云电脑配置安全组策略,云电脑配置安全组策略

2020-09-02

EasyX_Help.chm

EasyX 是针对 C++ 的图形库,可以帮助 C/C++ 初学者快速上手图形和游戏编程。 比如,可以基于 EasyX 图形库很快的用几何图形画一个房子,或者一辆移动的小车,可以编写俄罗斯方块、贪吃蛇、黑白棋等小游戏,可以练习图形学的各种算法,等等。 许多人学编程都是从 C 语言入门的,而目前的现状是: 1. 有些学校以 Turbo C 为环境学习 C 语言,只是 Turbo C 实在太老了,复制粘贴都很不方便。 2. 有些学校直接拿 VC 来讲 C 语言,因为 VC 的编辑和调试环境都很优秀,并且 VC 有适合教学的免费版本。可惜在 VC 里面只能做一些文字性的练习题,想画条直线或一

2020-09-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除