自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 Leetcode876. 链表的中间结点

题目描述:给定一个带有头结点 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。示例 1:输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形式:[3,4,5]) 返回的结点值为 3 。(测评系统对该结点序列化表述是 [3,4,5])。 注意,我们返回了一个 ListNode 类型的对象 ans,这样: ans.val =3, ans...

2020-05-03 16:29:56 136

原创 Leetcode面试题06. 从尾到头打印链表

题目来源:https://leetcode-cn.com/problems/cong-wei-dao-tou-da-yin-lian-biao-lcof/题目描述:输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。示例 1:输入:head = [1,3,2]输出:[2,3,1]限制:0 <= 链表长度 <= 10000**思路:**我采用的时...

2020-05-02 21:01:06 188

原创 Leetcode面试题22. 链表中倒数第k个节点

题目来源:https://leetcode-cn.com/problems/lian-biao-zhong-dao-shu-di-kge-jie-dian-lcof/题目描述:输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个节点是...

2020-05-02 17:30:31 156

原创 Leetcode160.相交链表

题目来源:https://leetcode-cn.com/problems/intersection-of-two-linked-lists/编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表:在节点 c1 开始相交。示例 1:输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2...

2020-04-27 21:07:22 237

转载 Linux---Makefile

转载:来自https://zhuanlan.zhihu.com/p/56489231作者:程序员良许1. 什么是Makefile一个企业级项目,通常会有很多源文件,有时也会按功能、类型、模块分门别类的放在不同的目录中,有时候也会在一个目录里存放了多个程序的源代码。这时,如何对这些代码的编译就成了个问题。Makefile就是为这个问题而生的,它定义了一套规则,决定了哪些文件要先编译,哪些文件...

2020-04-20 11:20:50 171

原创 数据结构笔记---树

树的定义树(Tree):N(N>=0)个结点构成的有限集合。当N=0时,称为空树;对于任一棵非空树,具备以下性质:树中有一个称为“根(Root)”的特殊结点,可以用r表示其余结点可分为m(m>0)个互不相交的有限集T1,T2,…Tm,其中每个集合本身又是一棵树,称为原来树的“子树(SubTree)”。注意:子树是不相交的除了根结点外,每个结点有且仅有一个父结点一...

2020-04-08 15:16:58 498

原创 数据结构笔记--图的定义和表示

一.图的概念:1.表示“多对多”的关系。2.包含:一组顶点:通常用V(Vertex)表示顶点集合一组边:通常用E(Edge)表示边的集合 边是顶点对:(v,w)∈E,其中v,w∈V 有向边<v,w>表示从v指向w的边(单行线) 不考虑重边和自回路3.抽象数据类型定义类型名称:图(Graph)数据对象集:G(V,E)由一个非空的有限顶点集合V和一个有限边集...

2020-04-07 18:10:31 346

原创 PTA03-树1 树的同构

给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。图1图2输入格式:输入给出2棵二叉树树的信息。对于每棵树,首先在一行中给出一个非负整数N (≤10),即该树的结点数(此时假设结点从0到N−1编号);随后N行,第i行对应...

2020-03-31 16:35:43 173

转载 E: could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporary unavailable)

E: could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporary unavailable) E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is an other process using it问...

2020-03-23 10:48:02 218

原创 LeetCode--删除链表中的节点

这道题是探索初级算法中链表一节的第一题。点击此处查看题目代码:/** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * }; */void deleteNode(struct ListNode* node) { s...

2020-03-22 13:21:29 92

原创 笔记---队列

队列是具有一定操作约束的线性表,只能在一端插入,一端删除。数据的插入是入队列,删除是出队列,要满足先进先出的原则,就像去银行的一个窗口办理业务,先来的人先办理,后来的人排在队伍后面。队列的顺序存储实现队列的顺序存储结构通常由一个一维数组和一个记录队列头元素位置的变量front以及记录队尾元素位置的变量rear组成。1.定义一个顺序队#include<stdio.h>#inc...

2020-03-15 16:36:53 148

原创 02-线性结构2 一元多项式的乘法与加法运算

题目描述:设计函数分别求两个一元多项式的乘积与和。输入格式:输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。输出格式:输出分2行,分别以指数递降方式输出乘积多项式以及和多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。零多项式应输出0 0。输入样例:4 3 4 -5 2 ...

2020-03-14 21:06:19 93

原创 笔记--堆栈

堆栈是具有一定约束的线性表,只在一端即栈顶做插入和删除操作,具有后进先出的特点。比如放在桌上的一叠盘子,要从最上面的盘子(即后放上去的)开始取走。栈的顺序存储实现栈的顺序存储通常由一个一维数组和一个记录栈顶元素位置的变量组成。1.定义顺序栈#include<stdio.h>#include<stdlib.h>typedef int ElemType;#def...

2020-03-13 16:01:15 167

原创 笔记--静态链表

链表的游标实现有一些语言不支持指针如BASIC、FORTRAN等,如果需要链表而又不能使用指针,就需要使用另外的实现方法。其中之一就是游标实现法。在链表的指针实现有两个重要的特点:1.数据存储在一组结构体中,每一个结构体包含有数据以及指向下一个结构体的指针。2.一个新的结构体可以通过调用malloc而从系统全局内存(global memory)得到,并可通过free而被释放。所以游标法必...

2020-03-08 16:51:15 208

原创 笔记--循环链表

循环链表是另一种形式的链式存储结构形式。循环单链表:将表中尾结点的指针域改为指向表头结点,整个链表形成一个环。由此从表中任一结点出发均可找到链表中其他结点。结点类型与非循环单链表的相同。循环双链表:形成两个环。结点类型与非循环双链表的相同。1.循环单链表(图片来自中国大学MOOC)与非循环单链表相比,循环单链表:链表中没有空指针域p所指结点是尾结点的条件:p->nex...

2020-03-07 17:27:44 627

原创 笔记--双向链表

双向链表特点:链表的每个结点有两个指针域,一个指向直接前驱,另一个指向直接后继。其开销是一个附加的链,它增加了空间的需求,同时也使插入和删除操作的开销增加一倍,因为有更多的指针需要定位。另一方面,它简化了删除操作,因为我们不再被迫使用一个指向前驱元素的指针来访问这个关键字;这个信息是现成的。(来自慕课和《数据结构与算法分析》)优点就是从任一结点出发可以快速找到其前驱结点和后继结点,也可以访问...

2020-03-06 16:27:45 303

原创 VirtualBox中安装Ubuntu

感谢这位博主,很详细的安装步骤点击此处查看教程

2020-03-02 13:30:47 92

原创 两个有序链表序列的合并

浙江大学MOOC数据结构第二周编程作业----两个有序链表的合并题目描述本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个非递减的整数序列。函数接口定义:List Merge( List L1, List L2 );其中List结构定义如下:typedef struct Node *PtrToNode;struct Node { ElementType Data;...

2020-02-28 19:03:57 8762 6

原创 二分查找

中国MOOC----浙大数据结构第一周编程题----二分查找题目描述函数接口定义Position BinarySearch( List L, ElementType X );其中List结构定义如下:typedef int Position;typedef struct LNode *List;struct LNode { ElementType Data[MAXSIZE]...

2020-02-27 15:52:29 281

原创 最大子列和问题

浙江大学中国MOOC数据结构第一周编程题思路:因为K小于等于100000,如果用数组,会占用很大的内存。因此,采用一边输入,一边求子序列和的方法。代码如下:#include<stdio.h>#include<stdlib.h>void MaxSequence(int n){ int i, temp = 0, Thissum = 0, Maxsum = 0,...

2020-02-27 14:15:50 72

原创 Leetcode-存在重复和只出现一次的数字

题目描述可以点击下面两个链接查看存在重复只出现一次的数字第一个题代码如下:#include<stdio.h>#include<stdlib.h>bool containsDuplicate(int* nums, int numsSize){ if(numsSize<2)//如果数组长度小于2,一定没有重复元素 { return fa...

2020-02-23 17:49:45 197

原创 Leetcode-从排序数组中删除重复项

力扣-探索初级算法这是一道基础的数组题,需要注意的就是不能建立一个新的数组,所以需要在原有数组上进行删除。我们可以从开头扫描,如果下一个元素与前一个元素相同则跳过继续扫描下个元素;如果不相同,则赋值给这个下标下的元素,继续扫描,记得最后返回数组长度加一,具体实现还是看代码。代码如下:#include<stdio.h>#include<stdlib.h>int r...

2020-02-21 21:57:29 88

原创 线性表的应用

两个表的自然连接学习资源来自中国大学MOOC。问题描述表:m行、n列。假设所有元素为整数。两个表自然连接:图片来自中国大学MOOC。代码如下:#include<stdio.h>#include<stdlib.h>#define MaxCol 10//最大列数为10typedef struct node1//定义数据类型{ int data[Ma...

2020-02-20 15:28:31 253

原创 有序表的二路归并

在中国大学MOOC上学习了分别用单链表和顺序表实现有序表的二路归并,为加深印象与理解,自己操作了一下。有序表中所有有序表以递增或递减的方式有序排列。两个有序表L1和L2合并成一个有序表L3。用单链表实现#include<stdio.h>//有序表的二路归并单链表实现#include<stdlib.h>typedef struct node{ int d...

2020-02-17 22:49:40 1700

原创 单链表的逆置

单链表的逆置#include<stdio.h>#include<stdlib.h>typedef struct Lnode{ int data; struct Lnode *next;}list;void create(list *&L, int a[],int n){ list *s, *r;//尾插法建表 int i; L = (lis...

2020-02-16 18:14:58 240

原创 数据结构学习笔记--单链表

中国大学MOOC数据结构的单链表学习笔记单链表单链表中节点的定义单链表的特点是:当访问过一个节点,只能接着访问它的后继节点,而无法访问它的前驱节点。插入节点操作插入操作语句描述s->next=p->next;p->next=s;用图描述或许更直观一点删除节点操作操作语句描述p->next=p->next->next建立单链表像顺序...

2020-02-15 14:29:34 551

原创 数据结构学习笔记--顺序表

学习中国大学MOOC–数据结构的总结顺序表关于顺序表的定义以及存储结构就不在此赘述顺序表是按照逻辑顺序依次存储到存储器中一片连续的存储空间中的。顺序表运算的实现1.建立顺序表类似于建立一个数组,但顺序表具有逻辑结构整体创建顺序表2.顺序表的基本运算算法(1)初始化线性表(2)销毁线性表该运算的结果是释放线性表占用的内存空间(3)判断是否为空表若L是空表,则返回1...

2020-02-13 16:51:23 708

空空如也

空空如也

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

TA关注的人

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