![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法与数据结构
gestwr
这个作者很懒,什么都没留下…
展开
-
两数之和 暴力美学 哈希表
1. 两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。 leetcode 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可以按任意顺序返回答案。 示例 1: 输入:nums = [2,7,11,15], target = 9 输出:[0,1] 解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。 示例 2: 输入:nums = [3,2,4],原创 2021-05-09 22:33:15 · 445 阅读 · 1 评论 -
leetcode丑数
leetcode 263. 丑数 给你一个整数 n ,请你判断 n 是否为 丑数 。如果是,返回 true ;否则,返回 false 。 丑数 就是只包含质因数 2、3 和/或 5 的正整数。 示例 1: 输入:n = 6 输出:true 解释:6 = 2 × 3 示例 2: 输入:n = 8 输出:true 解释:8 = 2 × 2 × 2 示例 3: 输入:n = 14 输出:false 解释:14 不是丑数,因为它包含了另外一个质因数 7 。 示例 4: 输入:n = 1 输出:true 解释:原创 2021-04-10 23:01:20 · 99 阅读 · 0 评论 -
leetcode 781. 森林中的兔子 哈希思想
leetcode 每日一题 781. 森林中的兔子 森林中,每个兔子都有颜色。其中一些兔子(可能是全部)告诉你还有多少其他的兔子和自己有相同的颜色。我们将这些回答放在 answers 数组里。 返回森林中兔子的最少数量。 示例: 输入: answers = [1, 1, 2] 输出: 5 解释: 两只回答了 "1" 的兔子可能有相同的颜色,设为红色。 之后回答了 "2" 的兔子不会是红色,否则他们的回答会相互矛盾。 设回答了 "2" 的兔子为蓝色。 此外,森林中还应有另外 2 只蓝色兔子的回答没有包含在数原创 2021-04-04 18:05:43 · 130 阅读 · 0 评论 -
CCF ISBN号码 字符串处理
13年12月CCF计算机软件能力认证 3193. ISBN号码 每一本正式出版的图书都有一个 ISBN 号码与之对应。 ISBN 码包括 9 位数字、1 位识别码和 3 位分隔符,其规定格式如 x-xxx-xxxxx-x,其中符号 - 是分隔符(键盘上的减号),最后一位是识别码,例如 0-670-82162-4 就是一个标准的ISBN码。 ISBN 码的首位数字表示书籍的出版语言,例如 0 代表英语;第一个分隔符 - 之后的三位数字代表出版社,例如 670 代表维京出版社;第二个分隔之后的五位数字代表该书在转载 2021-03-25 20:17:19 · 226 阅读 · 0 评论 -
CCF 出现次数最多的数 哈希表思想
13年12月CCF计算机软件能力认证 3192. 出现次数最多的数 给定 n 个正整数,找出它们中出现次数最多的数。 如果这样的数有多个,请输出其中最小的一个。 输入格式 输入的第一行只有一个正整数 n,表示数字的个数。 输入的第二行有 n 个整数 s1,s2,…,sn。 相邻的数用空格分隔。 输出格式 输出这 n 个次数中出现次数最多的数。 如果这样的数有多个,输出其中最小的一个。 数据范围 1≤n≤1000, 1≤si≤10000 输入样例: 6 10 1 10 20 30 20 输出样例: 10转载 2021-03-24 21:16:52 · 155 阅读 · 0 评论 -
最大字段/列和 普通解+动态规划
pta7-1 最大子列和问题 (20 分) 给定K个整数组成的序列{ N1 , N2 , …, NK },“连续子列”被定义为{ Ni , Ni+1 , …, Nj },其中 1≤i≤j≤K。“最大子列和”则被定义为所有连续子列元素的和中最大者。例如给定序列{ -2, 11, -4, 13, -5, -2 },其连续子列{ 11, -4, 13 }有最大的和20。现要求你编写程序,计算给定整数序列的最大子列和。 本题旨在测试各种不同的算法在各种数据情况下的表现。各组测试数据特点原创 2021-03-21 22:33:44 · 204 阅读 · 0 评论 -
背包问题(01、部分)纯递归 分支限界法
01背包问题 问题描述: 给定 n 件物品,物品的重量为 w[i],物品的价值为 c[i]。现挑选物品放入背包中,假定背包能承受的最大重量为 V,问应该如何选择装入背包中的物品,使得装入背包中物品的总价值最大? 纯递归 #include<iostream> #include<algorithm> using namespace std; int w[] = {20,30,50}; int n = sizeof(w)/sizeof(w[0]); int v[] = {5,1原创 2020-11-28 21:29:28 · 321 阅读 · 0 评论 -
回文字符串的判断 实现 递归
回文字符串的判断,如12321 abccba 程序如下:递归算法 #include <iostream> #include <string.h> using namespace std; //回文字符串的判断 // 123321 -> 2332 -> 33 char* huiwen(int m,int n,char* arr,int len) { if(!len || len == 1) return "YES"; if(arr原创 2020-10-24 18:25:41 · 1066 阅读 · 0 评论 -
求最大元素值 C++/Java实现 递归
7-1 求最大元素值 (30分) n个元素的数组的最大元素可以用递归计算出来。 定义方法:int max(int x, int y) 它返回x和y两个整数中的较大值。 试用递归编写方法:int arraymax(int[] a, int n) 它使用递归返回数组a的最大元素值。 终止条件:n==2 递归步骤:arraymax=max(max(a[0],...,a[n-2]), a[n-1]) 输入格式: 第一行的第一个元素是输入元素个数n (1<n<=30),第二个元素之后是输入n个元素; 输出原创 2020-10-22 21:33:09 · 679 阅读 · 1 评论