- 博客(43)
- 收藏
- 关注
原创 顺序表、单链表、顺序栈,链栈的基本运算
目录顺序表的基本运算 单链表的基本运算 顺序栈的基本运算 链栈的基本运算 线性表的9个基本运算: 栈的6个基本运算: 单链表的基本运算 顺序栈的基本运算 链栈的基本运算
2024-08-02 22:50:42
302
原创 队列的基本运算(顺序,环形,链式)
以下分别介绍了顺序队列,环形队列,链式队列的基本运算。主要有五种基本运算:1.初始化队列,2.销毁队列,3.判断队列是否为空,4.进队列,5.出队。顺序队列与环形队列的基本运算大体上都一致,只是在队满或队空时判断条件有所差异。
2024-08-02 22:36:07
409
原创 (算法)区间调度问题
此外,参与工作的时间段不能重复(即使是开始的瞬间和结束的瞬间的重叠也是不允许的). 你的目标是参与尽王多的工作,那么最多能参与多少项工作呢?有n项工作,每项工作分别在s时间开始,在t时间结束. 对于每项工作,你都可以选择参与与否,如果选择了参与,那么自始至终都必须全程参与.
2024-07-17 23:25:16
373
原创 (算法)硬币问题
问题:有1元,5元,10元,50元,100元,500元的硬币各有C1,C5,C10.C50,C100,C500个。现在要用这些硬币来支付A元,最小需要多少枚硬币?该题使用递归算法,利用局部最优解来推导全局最优解。
2024-07-13 22:06:29
444
1
原创 查找字符串中子字符串出现的位置(两种简单方法)
时间复杂度:O(n * m),其中 n 是文本长度,m 是模式串长度。如:在在ABCDEJXBDHCJSBJXzh中查找JXB在哪个位置。时间复杂度:通常情况下是 O(n),其中 n 是文本长度。当然,还有许多好的方法,有兴趣的可以自己去学习以下。使用字符串的indexof()方法。空间复杂度:O(1)或O(n)空间复杂度:O(1)
2024-05-17 20:40:02
1123
原创 android studio拍照功能问题解决
1.点击拍照功能直接闪退。2.拍照后不能选择确认。拍照后不能选择确认,大部分原因是临时路径保存不上的问题。将源代码中的临时路径保存代码换成以下代码,能解决大部分该问题。上述是在android studio做项目中经常会使用到模拟器或真机的拍照功能时主要遇到的两个问题。上述问题若还未解决,查看是否添加了动态权限。加入以上代码能有效解决90%的闪退问题。2.拍照后不能选择确认键,无法保存。添加地点:点击拍照按钮方法中。
2024-04-29 16:16:19
1085
3
原创 android studio项目实战——备忘录(附源码)
一共5张图片,粘贴到工程的drawable文件夹下来,其中bgone.png,bgthree.jpg两个图片是登录界面和信息添加界面的背景,buttonbg.png,savebg.png图片是添加备忘录按钮和保存按钮的背景,另外一张背景图片是sunshine.jpg是一张默认显示的照片。展开工程,打开app下方的build.gradle ,添加依赖,如下:依赖添加好之后,要记着同步,在页面右上角的位置单击:Sync Now 即可。注意:activity文件中相关的名称报错,得换成自己所创建工程的名字。
2024-04-29 15:56:51
9981
13
原创 Arraylist,TreeSet,TreeMap的增删改查及遍历
是 Java 中一个动态数组,它基于可变长度数组实现,能够以恒定时间复杂度进行增删改操作,但遍历操作的时间复杂度为 O(n)。是 Java 中一个有序集合,它基于红黑树实现,能够以对数时间复杂度进行增删改查和遍历操作。是 Java 中的一个有序映射,它基于红黑树实现,能够以对数时间复杂度进行增删改查和遍历操作。可排序,不重复,无索引。可排序,不重复,无索引。有序,可重复,有索引。
2024-04-04 20:55:01
480
原创 java求最大公约数,最小公倍数
最大公约数(Greatest Common Divisor, GCD)是指两个或多个整数共有约数中最大的一个。如:10和15,其最大公约数为5;最小公倍数(Least Common Multiple, LCM)是指两个或多个整数的最小公倍数,即能被这些整数整除的最小正整数。最小公倍数与最大公约数(Greatest Common Divisor, GCD)紧密相关,实际上,两个数的最小公倍数可以通过它们的乘积除以它们的最大公约数来计算。
2024-03-23 18:19:19
509
原创 蓝桥杯每日一题——棋盘
小蓝拥有 n xn 大小的棋盘,一开始棋盘上全都是白子。小蓝进行了 m 次操作,每次操作会将棋盘上某个范围内的所有棋子的颜色取反(也就是白色棋子变为黑色,黑色棋子变为白色)请输出所有操作做完后棋盘上每个棋子的颜色。接下来 m 行每行包含四个整数 x1,y1,x2,y2,相邻整数之间使用一个空格分隔,表示将在x1至 x2 行和 y1至 y2 列中的棋子颜色取反。输出几行,每行几个0或1表示该位置棋子的颜色。输入的第一行包含两个整数 n,m,用一个空格分隔,表示棋盘大小与操作数。
2024-03-17 19:06:10
1529
2
原创 (蓝桥杯每日一题)游戏最优解及求进制的相互转换
小 A和小 B 两个人在海边找到了 n 个石子,准备开始进行一些游戏,具体规则如下:小 B首先将 n 个石子分成若干堆,接下来从小 A开始小 A和小 B轮流取石子,每次可以任选一堆石子取走任意个,不可不取,没石子可取的输。小B可以保证每次小A取完石子后,剩余石子的堆数和数量都是奇数。这样无论小A怎么取,最后都会留下一个石子给小B。因为无论小B如何分堆,小A都可以以相同的方式去取,最后一定会是小B无法取石子。通过这些信息,我们可以得出结论:当初始石子数是偶数时,小A胜;当初始石子数是奇数时,小B胜。
2024-01-28 21:00:38
764
1
原创 (蓝桥杯每日一题)求最长回文串
给出一个长度为 n 的小写字符串,求一个最长的子串 S,满足S=XY,X,Y>1,且X,Y 均为回文串。一行一个整数,表示满足条件的最长子串S 的长度。第一行是一个长度为 n 的小写字符串。
2024-01-26 20:46:48
644
原创 (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
虽然无法立即说出某个数是平方数,但经常可以断定某个数不是平方数。因为平方数的末位只可能是:0,1,4,5,6,9 这 6 个数字中的某个。所以,4325435332 必然不是平方数。如果给你一个 2 位或 2 位以上的数字,你能根据末位的两位来断定它不是平方数吗?请计算一下,一个2 位以上的平方数的最后两位有多少种可能性?能够表示为某个整数的平方的数字称为“平方数。以下为常用的字符串函数功能。
2024-01-20 21:07:35
740
原创 (蓝桥杯每日一题)love
注意:一个字符串的子序列是指从给定字符串中删除任意数量的字符 (可以为零),并且不改变剩余字符的相对顺序所得到的新字符串。例如,考虑字符串 abc 它的一些子序列括:a,b,c,ab,ac,bc,abc 以及空字符串。她想要使这个字符串有 1314个 love 子序列但是马虎的小蓝却忘记了当前已经有多少个子序列为 love。马上就要到七夕情人节了,小蓝在这天想要心爱得男神表白,于是她写下了一个长度为n仅由小写字母组成的字符串。第二行输入一个长度为n仅由小写字母组成的字符串。
2024-01-19 19:43:45
819
原创 (蓝桥杯每日一题)喝饮料
但是他要想使用优惠券,得先订一份餐馆里的菜。菜有n 种,第i种的价格是 wi元。小蓝来到餐馆,想喝一杯x元的饮料。他有一张能将饮料价格降到q元的优惠券。也可以选择购买套餐,套餐中有一份餐馆的菜和饮料,费用是 wi+10元。输入第2行包含n个用空格隔开的正整数,表示每个菜的价格wi。输入第1行包含三个用空格隔开的正整数n,x,q.请问小蓝最少花多少元才能喝到这杯饮料?
2024-01-18 20:50:04
420
原创 几种类型的相互转换
这三种方法都可以将数组转换成字符串。方法可以将任何类型的值转换成字符串。你可以使用这个方法来将数组中的每个元素转换成字符串,然后将这些字符串连接起来。char类型的数组可直接进行打印,打印出来不为地址值,但其他类型数组,直接打印时为地址值。你可以使用这些类来将数组中的每个元素逐个添加到字符串中。方法可以将数组转换成字符串,其中数组中的每个元素都用逗号分隔。方法可以将字符串转换成int类型的值。方法可以将int类型的值转换成字符串。方法可以将任何类型的值转换成字符串。方法将这些值转换成字符串。
2024-01-16 22:12:11
435
原创 (蓝桥杯每日一题)字符串排序
GOODGOODSTUDYDAYDAYUP 排后为AADDDDDGGOOOOPSTUUYYY。本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。小蓝要把一个字符串中的字母按其在字母表中的顺序排列。例如,LANQIAO 排列后为AAILNOQ。请问对于以下字符串,排列之后字符串是什么?
2024-01-16 21:14:33
536
原创 (蓝桥杯每日一题)最少刷题数
对于每一名学生请你计算他至少还要再刷多少道题,才能使得全班刷题 比他多的学生数不超过刷题比他少的学生数。小蓝老师教的编程课有 N 名学生,编号依次是 1...。第i号学生这学期 刷题的数量是 Ai,输出N个整数,依次表示第 1...N 号学生分别至少还要再刷多少道题。第二行包含 N 个整数: A1,A2,A3,...,An。第一行包含一个正整数N。
2024-01-15 22:19:32
574
原创 (蓝桥杯每日一题)
小蓝作为新晋的怪兽终结者,现在它需要总共击败k次怪兽来完成老师布置的任务。总共有n只怪兽供他选择,每只怪兽都可以无限挑战,攻击需要满足以下条件。只有当编号1-i的怪兽都被你起码击败过一次,你才能挑战编号为i的怪兽。对于第只怪兽,首次击败它需要消耗ai点体力,后续每次击败都消耗ai+ bi点体力。第三行输入n 个整数 b1,b2,b3,··,bn,含义如题面所示。第二行输入n 个整数 a1,a2,a3,··an,含义如题面所示。第一行输入两个正整数n表示怪兽个和小蓝需要击败的怪兽次数。
2024-01-13 21:43:08
429
原创 (蓝桥杯每日一题)山
123565321、145541它们左右对称(回文)且数位上的数字先单调不减,后单调不增。本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。[2022,2022222022] 中有多少个数的形状像一座“山”。这的代码借鉴他人,借鉴高手的代码,也能更好的提升自己。小明数了很久也没有数完,他想让你告诉他在区间。他突然发现有些整数的形状像一坐“山”,比如。这天小明正在学数数。
2024-01-12 23:36:25
564
原创 (蓝桥杯每日一题)小樊的数学题
第二行给出n个数第i个数为Ai。第三行给出n个数第i个数为Bi。小陈最近刚学了有关数组的操作,他的朋友小樊想给他出一道题:小樊给出了三个数组 A,B,C这三个数组分别有 n,m,q个数,现在小陈可以从这三个数组中各选出一个数,使得这三个数的总乘积最小,将这个乘积输出。小陈不知道该如何解决这道题,请你帮帮他。第一行给出三个数字n,m,q,分别对应A,B,C三个数组的元素个数。第四行给出n个数,第i个数为Ci。
2024-01-11 22:27:10
429
原创 (蓝桥杯每日一题java)纸张问题
在ISO国际标准中定义了 AO 纸张的大小为1189mmx841mm,将A0纸沿长边对折后为A1纸大小为841mm x594mm,在对折的过程中长度直接取下整(实际裁剪时可能有损耗)。将A1 纸沿长边对后为 A2纸依此类推。输入一行包含一个字符串表示纸张的名称,该名称一定是A0、A1、A2A3、A4、A5、A6、A7、A8、A9 之一。在比赛中,能用暴力方法尽量用暴力方法,简单,不易错。输入纸张的名称,请输出纸张的大小。解法二:利用数学方法求最值。解法一:直接暴力破解。
2024-01-10 21:36:32
450
原创 (蓝桥杯每日一题)小蓝的数字卡片问题
小蓝想知道自己能从1拼到多少。例如,当小蓝有30张卡片,其中0到9各3张,则小蓝可以拼出1到10,但是拼11时卡片1已经只有一张了,不够拼出11。小蓝准备用这些卡片来拼一些数,他想从1开始拼出正整数,每拼一个,就保存起来,卡片就不能用来拼其它数了。现在小蓝手里有0到9的卡片各2021张,共20210张,请问小蓝可以从1拼到多少?小蓝有很多数字卡片,每张卡片上都是数字0到9。
2024-01-09 22:12:57
568
1
原创 把一个一维数组中的数据0~15打乱顺序 ,然后按照4个一组的方式添加到二维数组当中
【代码】把一个一维数组中的数据0~15打乱顺序 ,然后按照4个一组的方式添加到二维数组当中。
2023-10-26 19:56:01
235
原创 JAVA实现统计字符次数,键盘录入一个字符串,统计该字符串中大写字母字符,小写字母字符,数字字符出现的次数。
【代码】JAVA实现统计字符次数,键盘录入一个字符串,统计该字符串中大写字母字符,小写字母字符,数字字符出现的次数。
2023-10-07 23:04:41
926
1
原创 JAVA进行对学生信息管理的添加,遍历,删除,修改
/定义一个长度为3的数组,数组存储1-3名学生对象作为初始数据,学生对象的学号,姓名各不相同。学生的属性:学号,姓名,年龄。首先建立一个名为arr的Packagr ,然后建立A和Atest的两个class类。//要求1:在此添加一个学生对象,并在添加的时候进行学号的唯一性判断。//要求5:查询数组id为123的学生,如果存在,则将他的年龄+1岁。//如果存在,则删除,如果不存在,则提示删除失败。//要求4:删除完毕后,遍历所有学生信息。//要求2,添加完毕后,遍历所有学生信息。
2023-10-06 15:17:08
598
2
原创 每天一个c语言算法(求数列的反序)
即找出一个中间值,将与中间值对应的两个数值进行交换。输入:1,2,3,4,5,6。输出:6,5,4,3,2,1。
2023-09-05 18:14:29
104
原创 每天一个c语言算法(快速排序法)
它的基本思想是:通过一躺排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一不部分的所有数据都要小,然后再按次方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。(2)或若left和right重合,则交换基数值和left所指的元素,该轮排序结束,且该基数值已完成排序。若left和right重合,则交换基数值和left所指的元素,该轮排序结束,且该基数值已完成排序。(1)若left找到比基数大的值,left停止,且交换left和right所指的值。
2023-09-01 22:15:12
93
1
原创 每天一个c语言算法(插入排序法)
用整型变量 temp 来临时存放每一次需要排序的元素, 每一次判断的条件就是在一定条件下temp 是否小于前一个元素(默认从小到大排序),易知这一次排序6 > 2, 所以不需要进行交换,接着我们来进行下一趟排序;J 继续向前枚举的时候,我们发现,此时的temp 并不满足小于a[j-1] ,所以将 temp 插入存放在 a[j]里, 这一次的排序已经排完,即。, 即让原来的 j - 1项往后移一位,然后 j-- 让 j 继续枚举前面的数,原来的 i= 2 的原始值已经存放在了temp 里, 即。
2023-08-30 20:35:11
75
1
原创 每天一个c语言算法(选择排序法)
即是通过遍历数组,选择出数组的最小或最大值,与指定位置交换数据,遍历完整个数组的所有位置就完成排序。2.再从剩余未排序元素中继续寻找最小(大)元素,然后放到未排序序列的起始位置。1.首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。3.重复第二步,直到所有元素均排序完毕。适合自己的才是自己的!
2023-08-29 19:34:47
87
1
原创 每天一个c语言算法(冒泡排序法)
如图,第一轮比较了4次,第二轮比较了3次,第三轮比较了2次,第四轮比较了1次。:冒泡排序中每一轮比较会把最大的数沉入最底下,所以相互比较的次数会逐渐减小。冒泡排序即为相邻两元素进行比较。
2023-08-28 23:02:45
91
1
原创 STL常用查找类型
使用count在自定义数据类型中使用。3.adjacent_find介绍。adjacent_find代码使用。4.binary_search介绍。binary_search代码使用。count代码使用(返回int型)都在<algorithm>头文件中。find的使用 ,返回迭代器。6.count_if介绍。2.find_if 介绍。find_if代码使用。5.count 介绍。
2023-04-03 20:51:41
85
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人