算法
文章平均质量分 64
算法分析
Kerven_HKW
做一个牛人
展开
-
算法--基础入门
入门训练 Fibonacci数列问题描述Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。输入格式输入包含一个整数n。输出格式输出一行,包含一个整数,表示Fn除以10007的余数。说明:在本题中,答案是要求Fn除以10007的余数,因此我们只要能算出这个余数...原创 2017-12-26 15:21:00 · 1097 阅读 · 0 评论 -
【左程云Java算法】Chapter1-5:用一个栈实现另一个栈的排序
Chapter1-5:用一个栈实现另一个栈的排序【题目】用一个栈实现另一个栈的排序【要求】一个栈中元素的类型为整型,现在想将该栈从顶到底按从大到小的顺序排序,只许申请一个栈。除此之外,可以申请新的变量,但不能申请额外的数据结构。如何完成排序?【难度】士★☆☆☆【解答】将要排序的栈记为stack,申请的辅助栈记为help。在stack上执行pop操作,弹出的元素记为cur。如果cur小于或等于help的栈顶元素,则将cur直接压入help;原创 2022-10-27 09:45:22 · 2601 阅读 · 0 评论 -
【左程云Java算法】Chapter1-4:猫狗队列
Chapter1-4:猫狗队列【题目】【要求】实现一种狗猫队列的结构,要求如下:用户可以调用add方法将cat类或dog类的实例放入队列中;用户可以调用pollAll方法,将队列中所有的实例按照进队列的先后顺序依次弹出;用户可以调用pollDog方法,将队列中dog类的实例按照进队列的先后顺序依次弹出;用户可以调用pollCat方法,将队列中cat类的实例按照进队列的先后顺序依次弹出;用户可以调用isEmpty方法,检查队列中是否还有dog或cat的实例;原创 2022-10-25 16:07:01 · 1510 阅读 · 0 评论 -
【左程云Java算法】Chapter1-3:如何仅用递归函数和栈操作逆序一个栈
Chapter1-3:如何仅用递归函数和栈操作逆序一个栈【题目】一个栈依次压入1、2、3、4、5,那么从栈顶到栈底分别为5、4、3、2、1。将这个栈转置后,从栈顶到栈底为1、2、3、4、5,也就是实现栈中元素的逆序,但是只能用递归函数来实现,不能用其他数据结构。【要求】【难度】尉★★☆☆【解答】本题考查 栈的操作和递归函数的设计,我们需要设计出两个递归函数。递归函数一:将栈stack的栈底元素返回并移除。原创 2022-10-25 11:31:31 · 1173 阅读 · 0 评论 -
【左程云Java算法】Chapter1-2:由两个栈组成的队列
Chapter1-2:由两个栈组成的队列【题目】编写一个类,用两个栈实现队列,支持队列的基本操作(add、poll、peek)。【难度】尉★★☆☆【解答】栈的特点是先进后出,而队列的特点是先进先出。我们用两个栈正好能把顺序反过来实现类似队列的操作。具体实现时是一个栈作为压入栈,在压入数据时只往这个栈中压入,记为stackPush;另一个栈只作为弹出栈,在弹出数据时只从这个栈弹出,记为stackPop。因为数据压入栈的时候,顺序是先进后出的。原创 2022-10-24 20:56:43 · 1210 阅读 · 0 评论 -
【左程云Java算法】Chapter1-1:设计一个具有getMin功能的栈
通过上文提到的压入规则可知,stackMin中存在的元素是从栈底到栈顶逐渐变小的,stackMin栈顶的元素既是stackMin栈的最小值,也是当前stackData栈的最小值。如果stackMin中栈顶元素小,则把stackMin的栈顶元素重复压入stackMin,即在栈顶元素上再压入一个栈顶元素。(3)查询当前栈中的最小值操作由上文的压入数据规则和弹出数据规则可知,stackMin始终记录着stackData中的最小值,所以stackMin的栈顶元素始终是当前stackData中的最小值。原创 2022-10-20 21:17:06 · 1058 阅读 · 0 评论 -
2018年第九届蓝桥杯题目(C/C++B组)汇总
第一题标题:第几天2000年的1月1日,是那一年的第1天。那么,2000年的5月4日,是那一年的第几天?注意:需要提交的是一个整数,不要填写任何多余内容。解题思路:1. 判断2月有几天,然后天数相加。2. 判断2月有几天,然后天数相加。直接算或者借助Excel表 ,2000年1月1日再加124天=2000年5月4日,所以是第125天。答案:125第二......原创 2018-04-02 21:26:00 · 1158 阅读 · 0 评论 -
CSDN竞赛第一期
CSDN竞赛第一期原创 2022-07-05 14:41:12 · 2404 阅读 · 0 评论 -
JAVA实现:用字符串实现两个超大整数相加
用字符串实现两个超大整数相加:直接上代码:package study;public class test01 { public static void main(String[] args){ String str1 = "1234569"; String str2 = "123"; System.out.println(ad...原创 2020-02-24 11:30:21 · 2643 阅读 · 6 评论 -
LeetCode
1.C++对数组的操作:(1).求数组长度(2).C++的sort函数 -- 在头文件 #include <algorithm> 中 排序方法是类似于快排的方法,时间复杂度为n*log2(n)(3).C++中的::的作用 作用域限定符,当在类体中直接定义函数时,不需要在函数名字的前面加上类名,但是在类体外实现函数定义的时候,必须加上类名并且加上......原创 2019-09-01 12:57:39 · 1457 阅读 · 0 评论