c语言
Change_Improve
这个作者很懒,什么都没留下…
展开
-
C 语言运算符(操作符)
C 语言运算符( Operators of C programming language )是说明特定操作的符号,每种不同的符号代表的功能是不尽相同的。运算符的作用是构造 C 语言表达式的工具,比如最常用的 + 、- 、* 、% 、/ 等。C 语言的运算符种类异常丰富,除了控制语句和输入语句以外的几乎所有的基本操作都为运算符处理。除了常用的算术运算符、关系运算符和逻辑运算符之外,还有一些用...原创 2020-03-11 12:27:46 · 2005 阅读 · 0 评论 -
数据结构—串-基本知识点(第五章)
目录1. 串的定义2. 串的比较3. 串的抽象数据类型4. 串的存储结构4.1 串的顺序存储结构4.2 串的链式存储结构5. 朴素的模式匹配算法6. KMP模式匹配算法1. KMP模式匹配算法原理2. next数组值推荐3. KMP模式匹配算法实现4. KMP模式匹配算法改进5. nextval数组值推导7. 总结串:串(string)...原创 2020-01-15 20:00:56 · 2653 阅读 · 0 评论 -
栈的链式存储结构相关操作详细代码
数据结构—栈基本知识点在这篇博客中介绍了栈的基本知识点,现在我们用C将这些基本操作都实现一下。InitLinkStack(**S):初始化栈CreateLinkStack(*S):创建栈LengthLinkStack(*S):输出栈的元素个数OutTop(*S):输出栈顶元素Push(*S):入栈操作,将元素e插入到栈顶Pop(*S,*e):出栈操作,删除栈顶元素,并返回其值Out...原创 2019-12-07 16:29:28 · 902 阅读 · 0 评论 -
栈的顺序存储结构相关操作详细代码
数据结构—栈与队列基本知识点在这篇博客中介绍了顺序表(线性表)的基本知识点,现在我们用C将这些基本操作都实现一下。InitStack(**S):初始化栈CreateStack(*S):创建栈LengthStack(*S):输出栈的元素个数OutTop(*S):输出栈顶元素Push(*S):入栈操作,将元素e插入到栈顶Pop(*S,*e):出栈操作,删除栈顶元素,并返回其值OutVa...原创 2019-12-06 18:52:43 · 1024 阅读 · 0 评论 -
线性表—静态链表基本操作实现代码
数据结构—线性表基本知识点—静态链表 点我 这篇博客讲解了静态链表的基本知识点,可以先看看这个了解一下基本的概念,再看下面关于静态链表的基本操作的代码,这些代码都很简单,逻辑也并不复杂,所以就不细细讲解每行代码了,代码中要注意的地方我都有注释。#include<cstdio>#define MAXSIZE 1024 //假设链表的最大长度是1024#define OK 1#d...原创 2019-12-03 18:12:03 · 629 阅读 · 0 评论 -
线性表—单链表(链式存储结构)基本操作实现代码
数据结构—线性表基本知识点在这篇博客中介绍了单链表(线性表)的基本知识点,现在我们用C将这些基本操作都实现一下。InitList():初始化操作,创建头结点Head ListInsertHead(Head):单链表的插入—头插法ListInsertTail(Head):单链表的插入—尾插法CreateListHead(Head, n):单链表的整表创建—头插法,随机产生n个元素的值,建立...原创 2019-12-01 23:23:56 · 3646 阅读 · 1 评论 -
线性表—顺序表(顺序存储)基本功能实现代码
在这篇博客中介绍了线性表的基本知识点,现在我们用C++将这些基本操作都实现一下。InitList ( *L): 初始化操作,建立一个空的线性表L。ListEmpty ( L): 若线性表为空,返回true,否则返回false。ClearList ( *L ): 将线性表清空。GetElem ( L, i,*e ): 将线性表L中的第 i 个位置元素值返回给e。LocateElem...原创 2019-11-30 12:29:48 · 1227 阅读 · 0 评论 -
运算符优先级
运算符优先级在一个表达式中可能包含多个有不同运算符连接起来的、具有不同数据类型的数据对象;由于表达式有多种运算,不同的结合顺序可能得出不同结果甚至出现错误运算错误,因为当表达式中含多种运算时,必须按一定顺序进行结合,才能保证运算的合理性和结果的正确性、唯一性。优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。表达式的结合次序取决于表达式中各种运算符的优先级。优先...转载 2019-09-11 15:24:59 · 433 阅读 · 0 评论 -
无向图邻接矩阵的创建
无向图的邻接矩阵:存储方式是利用两个数组来表示图。一个一维数组(Vexs)存储图中顶点信息,另一个二维数组(Edge)存储图中边的信息。首先创建邻接矩阵的结构体,变量有存放顶点信息的一维数组(Vexs),存放边的信息的二维数组(Edge),当前的顶点数和边数这四个变量,然后创建一个子函数CreateMGraph用来创建无向图的邻接矩阵,在创建一个子函数ShowpGraph用来输出创建的无向邻接...原创 2019-01-29 16:00:49 · 22578 阅读 · 9 评论 -
删除无头单链表的一个非尾结点
一个单链表很长,遍历一边很慢,我们仅知道一个指向某结点的指针pNode,而我们又想删除这个节点。思路:这个题是醉翁之意不在酒,由于我们只知道要删结点的指针pNode,而且是单链表,所以我们没法找到该结点的前驱结点,只能找到该结点的下一个结点,所以我们可以创建一个新指针pos,将其赋为pNode的下一个结点的指针,将pos的的值赋给pNode,pos的指针域的值也赋给pNode,如下图所示:...原创 2019-01-22 18:13:45 · 218 阅读 · 0 评论 -
寻找单链表的中间元素
寻找单链表的中间元素单链表元素个数如果为奇数个则正常输出中间元素即可,若单链表元素个数为偶数个则将两个中间元素都输出。代码如下:#include<stdio.h>#include <malloc.h>#include<stdbool.h>//C语言中要用bool类型时 需要用此文件名,若没有此文件 就无法使用booltypedef int Elem...原创 2019-01-21 19:02:16 · 1313 阅读 · 0 评论 -
找出单链表倒数第四个元素
找出单链表倒数第四个元素:正常情况下:创建两个指针使两指针中间相隔两个元素,然后遍历单链表,快的指针pFast到达最后一个元素时,慢的指针pSlow此时的位置就是倒数第四个元素的位置。极端情况下:单链表元素不够四个是要输出提示语...原创 2019-01-21 18:39:50 · 320 阅读 · 0 评论 -
爬楼梯 计蒜客
假设你现在正在爬楼梯,楼梯有 n级。每次你只能爬 1 级或者 2 级,那么你有多少种方法爬到楼梯的顶部?输入格式第一行输入一个整数 n(1≤n≤50),代表楼梯的级数。输出格式输出爬到楼梯顶部的方法总数。样例输入5样例输出8代码如下:代码一(如果仔细观察题目会发现,是有规律的,有n级台阶,爬楼梯的方法有(n-1)+(n-2)种。所以可以用递归的方法去做题...原创 2018-10-22 15:02:43 · 239 阅读 · 0 评论 -
整数转换成罗马数字 计蒜客
给定一个整数 numnumnum,将整数转换成罗马数字。如 1,2,3,4,51,2,3,4,51,2,3,4,5 对应的罗马数字分别为I,II,III,IV,V等。输入格式第一行输入一个整数 num(1≤num≤3999)num(1 \leq num \leq 3999)num(1≤num≤3999)。输出格式输出 numnumnum 对应的罗马数字。样例输入123...原创 2018-10-20 16:17:36 · 195 阅读 · 0 评论 -
二叉树的创建和遍历
一、实验目的:1、熟悉二叉树结点的结构和对二叉树的基本操作;2、掌握对二叉树每一种操作的具体实现;3、学会递归方法和非递归方法实现二叉树的运算某重操作。 二、实验内容:1、建立一棵二叉树。2、用递归算法对二叉树进行先序、中序和后序遍历。3、用非递归算法对二叉树进行先序、中序和后序遍历。 三、实验要求: 编写实现二叉树建立和遍历的基本算法的函数,并在此...原创 2018-11-10 09:27:47 · 823 阅读 · 1 评论 -
单链表重复元素的删除
1.1 问题描述为了增强对单链表的熟悉,能够更加熟练地运用单链表,编写了一个单链表重复元素的删除程序。通过对该程序的实现,使我更加熟悉单链表的实现原理。1.2 问题分析用子函数实现单链表的初始化、尾插法建立单链表、重复元素的删除、输出单链表、置空单链表的功能,主函数其调用功能,功能菜单进行选择。1.3 设计分析 本次实验设计主要是增强对单链表的熟悉,能够更加熟练地运用单链表。...原创 2018-11-17 14:15:25 · 2150 阅读 · 0 评论 -
顺序栈的基本操作
顺序栈一些简单基本操作的实现,代码如下:#include<stdio.h>#include<stdbool.h>#define MAXSIZE 20 /*存储空间初识分配量*/typedef int SElemType;//定义SElemType表示int类型typedef struct{ SElemType data[MAXSIZ...原创 2019-01-21 17:59:14 · 1072 阅读 · 0 评论 -
单链表反转
单链表反转:将单链表原本的元素逆序。#include&amp;lt;stdio.h&amp;gt;#include &amp;lt;malloc.h&amp;gt;#include&amp;lt;stdbool.h&amp;gt;//C语言中要用bool类型时 需要用此文件名,若没有此文件 就无法使用bool,此时你可以自己定义booltypedef int ElemType;type原创 2019-01-18 18:24:17 · 139 阅读 · 0 评论 -
单链表的基本操作 字符型
单链表基本操作代码这个里面更加全,点我一、实验目的:1、复习C语言程序设计中的知识。2、掌握线性表的链式存储结构的表示和实现方法。3、掌握单链表基本操作的算法实现。二、实验内容:1.建立单链表。2.在单链表上实现插入、删除和查找等操作。三、实验要求: 编写实现单链表的基本算法(初始化、查找、插入、删除等)的函数,并在此基础上设计一个主程序完成如下...原创 2018-09-26 22:36:45 · 2132 阅读 · 0 评论 -
顺序表的基本操作
一、实验目的:1、复习C语言程序设计中的知识。2、掌握线性表的顺序存储结构的表示和实现方法。3、掌握顺序表基本操作的算法实现。二、实验内容:1.建立顺序表。2.在顺序表上实现插入、删除和查找等操作。三、实验要求:编写实现顺序表的基本算法(初始化、查找、插入、删除等)的函数,并在此基础上设计一个主程序完成如下功能:⑴初始化整型顺序表L;⑵建立顺序表L,如(a,...原创 2018-09-23 16:37:43 · 1268 阅读 · 0 评论 -
单链表的基本操作
一、实验目的:1、复习C语言程序设计中的知识。2、掌握线性表的链式存储结构的表示和实现方法。3、掌握单链表基本操作的算法实现。 二、实验内容:1.建立单链表。2.在单链表上实现插入、删除和查找等操作。 三、实验要求: 编写实现单链表的基本算法(初始化、查找、插入、删除等)的函数,并在此基础上设计一个主程序完成如下功能: ⑴初始化整型单链表H;...原创 2018-09-26 21:04:25 · 868 阅读 · 0 评论