- 博客(18)
- 收藏
- 关注
原创 Leetcode 1 两数之和
给定一个整数数组 nums和一个整数目标值 target,请你在该数组中找出 和为目标值 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2:输入:nums = [3,2,4], target = 6...
2021-05-02 21:56:32
97
原创 2020-08-13
分享一篇最经典的背包问题博客:《背包九讲》https://www.cnblogs.com/jbelial/articles/2116074.html对于想认真学习动态规划的同学,绝对是一个福利。背包问题是动态规划问题的一个经典题型,很多dp的问题都可以转移到背包问题上来,可以说是一通百通。当然这并不意味着看完了背包九讲就能做出来所有的背包问题甚至于“精通动态规划”,读者们还需要自己动手多画图,多写代码,才能有所收获。加油!...
2020-08-13 21:00:07
111
原创 無题
平时学习的时候心里一直明白学习不是为了考高分,也不是为了拿奖学金,而是为了自己能够真正学到东西。因此不喜欢在水课上面多花时间,尽管它学分真的很高。也从来不屑于去想那些考试的条条框框。但是临近考试吧,又想好好复习争取多考几分。人真的好矛盾。明天早上期末第一场,人工智能,祝我开门红...
2020-06-17 21:55:42
155
原创 三省吾身
今天是2020年的5.11日。本人觉得自己最近有些颓废,学习路线出现了偏移,在此,本人决定进行自我反省,给自己制定一个学习计划。希望长时间不屈不挠的努力一定会得到最终意想不到的收获。加油。除了完成应有的学业任务以外,近期要多写有关数据结构的代码,尤其要从树开始,然后慢慢往前复习,栈,队列,线性表,等等。如果让我现在像一开始一样能快速手撸线性表一直到队列的代码,我猜我应该是做不到了,我反省,我自责,我努力,我改正,我奋发,我自强。蓝桥杯要继续着手学习,每天看一道,或者练一道动态规划或者搜索的练习题。巩固
2020-05-11 21:48:53
141
原创 学习线性表,高深又烧脑?莫怕,手把手教你终结烦恼!(队列:链式存储结构)
经过长途跋涉,队列的顺序存储结构总算告一段落。今天我们要用链表来实现队列。队列中只允许在单链表的表头进行出队操作,在表尾进行插入操作,因此需要使用队头front和队尾rear两个指针,用front指向队首结点,用rear指向队尾结点。和链栈一样,链队列也不考虑队满溢出的情况。对于链队列的声明,首先我们要像单链表一样声明一下数据结点:typedef struct node{ Ele...
2020-04-08 11:48:12
172
原创 学习线性表,高深又烧脑?莫怕,手把手教你终结烦恼!(队列:顺序存储结构(二))
上次我们提到,队列的顺序存储结构是完全可以优化的,从而避免不必要的空间上的浪费,今天,我们就来学习,并且实现一下。解决这个问题的主要办法就是把队列的头和尾连接起来,成为一个环形的队列,我们称它为环形队列或循环队列。环形队列首尾相连后,当队尾指针rear==MaxSize-1后,再前进一个位置就到达0,于是就可以使用另一端的空位置存放队列元素了。实际上存储器的地址总是连续编号的,因此我们可以使用...
2020-04-07 19:33:00
209
1
原创 学习线性表,高深又烧脑?莫怕,手把手教你终结烦恼!(队列:顺序存储结构(一))
Long time no see.不知道为什么,可能因为最近事情比较多,也可能是因为我自己的懒惰(小伙伴们不要学我),我竟然将近20天没有更新我的博客了,想必长时间没有打理,它已经发霉长蘑菇了叭。长时间的停工会让我一一种全新的,更饱满的热情投入到博客的写作中来,希望大家也可以多给我点几个给力的赞,或者小小的打赏,嘿嘿。上次我们讲完了栈,简单回顾一下,栈的特点是什么?后进先出(先进后出)。W...
2020-04-07 16:18:40
153
原创 学习线性表,高深又烧脑?莫怕,手把手教你终结烦恼!(栈:链栈)
上一次我们了解了栈是怎么回事,并且讲了栈的顺序存储结构,也就是顺序栈。相信大家的求知欲望都很强,绝不会满足于顺序栈。指针是C语言的灵魂,写一个顺序栈用不到指针怎么能行呢?这样C语言不就被大材小用了嘛......开个玩笑,不管是顺序栈还是链栈,它都有自己的优缺点,没有绝对的谁更好谁更差。今天我们就试着用链式存储来实现一下栈。链栈的示意图如下:它看起来比较奇葩,它并没有把链表的尾作为栈顶,...
2020-03-17 20:42:25
142
原创 学习线性表,高深又烧脑?莫怕,手把手教你终结烦恼!(栈:顺序栈)
学习完线性表的有关内容,相信大家对线性表(无论是顺序表还是链表)已经有了非常清楚的认识,包括它的结构,功能,以及基础操作,甚至是详细的代码。这些东西牢记于心之后,我们就不能再满足当前的所学了。今天我们一起来学习一下一种特殊的线性表——栈。为什么说它是线性表呢?因为它的结构以及基本操作和线性表大抵类似。为什么说它特殊呢?还是因为它的结构以及基本操作和线性表大抵类似(故意绕一个弯子,手动滑稽)。类似和...
2020-03-17 17:37:23
132
原创 学习线性表,高深又烧脑?莫怕,手把手教你终结烦恼!(单链表的简单应用)
单链表的基本操作都学到手了,代码都敲得滚瓜烂熟了甚至敲到发霉,可就是不知道怎么用?那就练练!不就是几道题吗?题虽简单,用处却不小,至少让你明白了单链表的基本操作可以玩的这样6,脱离了之前的那些写好的现成的函数,代码可就长上加长了......直接上题,贴代码注释好无聊啊......没办法,学习应用就是这样,仔细看看琢磨琢磨其实也挺有趣。人一旦和一个东西呆一起久了,基本上都会产生感情,希望大家对代码也...
2020-03-15 22:35:07
165
原创 学习线性表,高深又烧脑?莫怕,手把手教你终结烦恼!(线性表:链式存储结构)
顺序表是线性表的一种,它必须占用一整块事先分配好的存储空间,这样会降低存储空间的利用率。为了解决这个问题,今天,我们来学习另外一种线性表——链表。链表是一种可以实现存储空间动态管理的链式存储结构。线性表的链式存储结构称为链表。其中每个存储结点不仅包含元素本身的信息(称为数据域),而且包含了表示元素之间逻辑关系的信息,在C语言中使用指针来实现,这称为指针域。如图1所示,每个结点的数据域包含了这个...
2020-03-12 17:14:18
428
1
原创 认识递归
大家好,今天我们来学习一下(包括但不限于)C语言里面的一种常见函数(算法),那就是递归。它是一种非常巧妙的算法,可以解决一些一般的算法难以解决的问题,它的效率可能不是最高的,但是它可以成功地让复杂的问题简单化,直观化,非常清晰明了。那么一起来了解一下吧。递归函数的定义很简单:调用自身的函数称为递归函数。展开了讲,就是一个函数第一次调用自身,没能解决问题,第二次调用,同样没有解决问题,别灰心,还...
2020-03-09 17:54:10
170
原创 关于顺序表操作的一点说明
在一起学习完顺序表的操作之后,不知道你有没有这样的疑问,譬如这个函数:SqList* CreateList(SqList* L,ElemType a[],int n){ int i=0,k=0; L = (SqList*)malloc(sizeof(SqList)); while(i < n){ L->data[i]=a[i]; ...
2020-03-09 08:07:43
1731
2
原创 顺序表的应用示例
学习完最基本的线性表操作,我们开始学习运用这些强大的操作。一开始,大家可能很不习惯使用这些操作,但还是那句话,熟能生巧。只要你肯下功夫,什么都是手到擒来,代码都能变成金块。我们今天来讲一下这道例题:假设有两个集合A和B(元素都按非递减有序排列),分别用两个线性表La和Lb表示。利用线性表的基本运算设计一个算法求一个新的集合C,将两个集合的并集放在线性表Lc中,Lc仍按非递减有序排列。大...
2020-03-08 16:26:17
1285
2
原创 学习线性表,高深又烧脑?莫怕,手把手教你终结烦恼!(线性表:顺序存储结构)
前面我们了解了什么是数据结构,现在我们正式开始数据结构的学习。古人说,工欲善其事,必先利其器。想要用C语言实现数据据结构,必须先准备好集成开发环境。在这里我给大家推荐以下几款:微软的Visual Studio Code(下面简称vs code),Jet Brains的Clion,以及微软的Dev C++。其中vs code需要大量自己手动配置的步骤,可能比较麻烦,但是它的界面比较美观。Dev C+...
2020-03-08 14:47:29
677
原创 听起来高深莫测的数据结构原来是这个样子!(数据结构简介)
大家好,今天开始,我们将一起来学习数据结构这门课。亲爱的读者们,你们可能学过C、C++、Java、python、Golang、C#等编程语言,但是不知道能干啥?写个"Hello,world",还是判断平年闰年?嗷,还会冒泡排序呢!但是这些用法都很基础啦!想更上一层楼吗?来学数据结构就对啦!掌握编程语言相当于会砌猪圈的泥瓦匠,学完数据结构就会盖个小平房啦!同时还可以一窥构筑摩天大厦的奇门武功! 通往...
2020-03-08 09:28:05
242
原创 闰年平年的判断
问题描述:给定一个年份,判断这一年是不是闰年。当以下情况之一满足时,这一年是闰年:年份是4的倍数而不是100的倍数;年份是400的倍数。其他的年份都不是闰年。输入格式:输入包含一个整数y,表示当前的年份。输出格式:输出一行,如果给定的年份是闰年,则输出yes,否则输出no。说明:当试题指定你输出一个字符串作为结果(比如本题的yes或者no,你需要严格按照试题中给定的大小写,...
2020-03-07 22:32:18
541
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人