E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
数据结构c语言知识总结
【
数据结构
】14 队列(带头结点的链式存储和顺序存储实现)
定义队列是一个有序线性表,但是队列的插入、删除操作是分别在线性表的两个不同端点进行的。设一个队列Q=(a1,a2,...,an)Q=(a_1,a_2,...,a_n)Q=(a1,a2,...,an),那么a1a_1a1被称为队头元素,ana_nan为队尾元素。假如将元素A,B,C,D依次插入队列,第一个从队列中删除的元素为A,即先插入的将被先删除,故队列也称为先进先出表。抽象数据类型:类型名称:队
abutu999
·
2024-02-13 01:44
数据结构
C\C++
数据结构
算法
【
数据结构
】11 堆栈(顺序存储和链式存储)
定义可认为是具有一定约束的线性表,插入和删除操作都在一个称为栈顶的端点位置。也叫后入先出表(LIFO)类型名称:堆栈(STACK)数据对象集:一个有0个或者多个元素的有穷线性表。操作集:(1)StackCreateStack(intMaxSize)生成空堆栈,其最大长度为MaxSize(2)boolIsFull(Stack)判断栈S是否已满。(3)boolPush(StackS,ElementTy
abutu999
·
2024-02-13 01:14
数据结构
C\C++
数据结构
算法
【
数据结构
】03双指针
Q1:反转字符串编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用O(1)的额外空间解决这一问题。示例1:输入:s=[“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“h”]设置双指针,i指首,j指尾voidreverseString(char*s,intsSize){inti
abutu999
·
2024-02-13 01:13
C\C++
数据结构
【
数据结构
】07双指针技巧
Q1:环形链表给你一个链表的头节点head,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从0开始)。注意:pos不作为参数进行传递。仅仅是为了标识链表的实际情况。如果链表中存在环,则返回true。否则,返回false。示例1:输入:head=[3,2,0,-4]
abutu999
·
2024-02-13 01:13
数据结构
C\C++
数据结构
【
数据结构
】10 广义表与多重链表
广义表广义表不仅跟线性表一样可以表示简单是线性顺序关系,而且可以表达更复杂的非线性多元关系。GList=(a1,a2,...,ai−1,ai,ai+1,...,an)GList=(a_1,a_2,...,a_{i-1},a_i,a_{i+1},...,a_n)GList=(a1,a2,...,ai−1,ai,ai+1,...,an)其中,aia_iai可以是单元素,也可以是广义表。由于广义表的元素
abutu999
·
2024-02-13 01:13
数据结构
数据结构
链表
【
数据结构
】02 字符串匹配&KMP算法
字符串匹配有如下两个字符串S和P,需要判断出P是否为S的子串。简单的方法是以S的每个字符为匹配串的首个字符,将其与P串进行匹配。这个算法的时间复杂度为O(mn),若遇到较大的字符串,耗时长。实现方法如下://传入s起始boolcomparep_s(intj,char*p,char*s){intk=0;while(s[k]!='\0'){if(s[j+k]!=p[k]){returnfalse;}k
abutu999
·
2024-02-13 01:43
数据结构
C\C++
数据结构
算法
2020年6月 leetcode每日一题
C语言
版本
目录1拥有最多糖果的孩子2求1+2+…+n递归快速乘3新21点递归超时动态规划4除自身以外数组的乘积5顺时针打印矩阵6最长连续序列哈希并查集7等式方程的可满足性并查集8把数字翻译成字符串动态规划9回文数转化为数组反转一半数字厉害10回文链表翻转链表+快慢指针翻转链表11每日温度暴力超时暴力不超时单调栈12四数之和双指针13使用最小花费爬楼梯动态规划14最长公共前缀15二叉树的序列化与反序列化递归前
Churkina_洛
·
2024-02-13 01:42
我的编程之路
最近依然在思考一些事情,自己多多少少会想到过往的事情,那就少不了去思考一下过去自己在编程这条道路上的点点滴滴往事2014年初次接触编程的第一门语言,
C语言
,这或许是计算机科学技术专业入门必备与程序交互的语言吧
143e7673f04b
·
2024-02-13 01:31
C语言
学习记录
小飞机_牛客题霸_牛客网(nowcoder.com)飞机翅膀12个*,第一行按5下空格,再按两下*,再按5下空格,最后一行按4下空格,再按一下*,再按两下空格,再按一下*,再按4下空格数格子就完了,本篇还是练格式。
曾浩轩
·
2024-02-13 00:03
C语言学习记录
学习
c语言
力扣刷题之旅:高阶篇(四)—— 最小生成树算法
力扣(LeetCode)是一个在线编程平台,主要用于帮助程序员提升算法和
数据结构
方面的能力。以下是一些力扣上的入门题目,以及它们的解题代码。
GT开发算法工程师
·
2024-02-13 00:28
算法
leetcode
图论
python
数据结构
职场和发展
力扣刷题之旅:高阶篇(一)—— 并查集的应用
力扣(LeetCode)是一个在线编程平台,主要用于帮助程序员提升算法和
数据结构
方面的能力。以下是一些力扣上的入门题目,以及它们的解题代码。
GT开发算法工程师
·
2024-02-13 00:27
leetcode
算法
职场和发展
数据结构
python
动态规划
力扣刷题之旅:高阶篇(三)—— 图算法的挑战
力扣(LeetCode)是一个在线编程平台,主要用于帮助程序员提升算法和
数据结构
方面的能力。以下是一些力扣上的入门题目,以及它们的解题代码。
GT开发算法工程师
·
2024-02-13 00:27
leetcode
python
哈希算法
dfs
算法
有序二叉树
(a)是有序树B答案解析[分析]本题考查
数据结构
中二叉树基本知识。对树可进行先根遍历、后根遍历和层序遍历。
杰伦哎呦哎呦
·
2024-02-13 00:15
力扣刷题之旅:高阶篇(二)—— 动态规划的艺术:背包问题
力扣(LeetCode)是一个在线编程平台,主要用于帮助程序员提升算法和
数据结构
方面的能力。以下是一些力扣上的入门题目,以及它们的解题代码。
GT开发算法工程师
·
2024-02-12 23:26
leetcode
动态规划
算法
python
数据结构
职场和发展
C++进阶(十四)智能指针
北尘_:个人主页个人专栏:《Linux操作系统》《经典算法试题》《C++》《
数据结构
与算法》☀️走在路上,不忘来时的初心文章目录一、为什么需要智能指针?
北尘_
·
2024-02-12 23:24
C++
c++
java
开发语言
C++进阶(十五)C++的类型转换
北尘_:个人主页个人专栏:《Linux操作系统》《经典算法试题》《C++》《
数据结构
与算法》☀️走在路上,不忘来时的初心文章目录一、
C语言
中的类型转换二、为什么C++需要四种类型转换三、C++强制类型转换
北尘_
·
2024-02-12 23:24
C++
c++
java
jvm
【
c语言
】字符串常见函数 上
个人主页:[甜美的江]欢迎点赞✍评论⭐收藏收录专栏:[
c语言
]希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步!
·
2024-02-12 23:31
机器学习
vector容器
1.vector基本概念1.1功能:vector
数据结构
和数组非常相似,也称为单端数组vector与普通数组区别:不同之处在于数组是静态空间,而vector可以动态扩展动态扩展:并不是在原空间之后续接新空间
进击的菜鸟子
·
2024-02-12 23:51
C++
c++
c语言
Vector
数据结构
基础
一、
数据结构
的基本概念1.数据数据是信息的载体,包括所有能输入计算机并被之处理的文字、语音、图像等,其中计算机能够直接识别并计算的是二进制信息(0或1)2.数据元素数据元素是数据的基本单位,若干数据项构成数据元素
Geniusvisionary
·
2024-02-12 23:19
数据结构
C语言
动态内存管理、柔性数组
C语言
动态内存管理、柔性数组为什么有动态内存管理//没有动态内存分配之前我们掌握开辟的内存的方式有:doublea=10;//在栈上分配8个字节大小的空间charch[10];//在栈上分配一段连续的空间以上述方式开辟的内存有一下特点
小太阳....
·
2024-02-12 23:43
C/C++
内存管理
陪你一起复习
C语言
内存函数
memcpy使⽤和模拟实现函数的介绍void*memcpy(void*destination,constvoid*source,size_tnum);•函数memcpy从source的位置开始向后复制num个字节的数据到destination指向的内存位置。这里非常要注意是字节不是元素个数•这个函数在遇到'\0'的时候并不会停下来。•如果source和destination有任何的重叠,复制的结果
行弟学习笔记
·
2024-02-12 23:42
c语言
算法
开发语言
C语言
扫雷代码(可以展开一片)
今天小编带大家来设计一款扫雷游戏,话不多说咱们先看效果程序设计的基本要求从图片不难看出扫雷程序不是十几行代码就可以运行起来的程序,其中需要你有写代码的基本逻辑思维能力,还需要用到二维数组,函数,循环等基本的
c语言
知识
行弟学习笔记
·
2024-02-12 23:12
c语言
算法
开发语言
c#
程序人生
学习方法
改行学it
带你重新了解指针
1.指针的概念在计算机内存中,每一块内存都有自己的地址,这里的地址在
c语言
中就叫指针,详细来说指针就是一个用于存储“另外一个变量地址”的变量。
行弟学习笔记
·
2024-02-12 23:12
c#
改行学it
c语言
带你重新学习结构体、联合体、枚举
结构体可以被声明为变量、指针或数组等,用以实现较复杂的
数据结构
,其成员一般用名字访问例如定义一个学生structStu{charname[20];//名字intage;//年龄charsex[5];//
行弟学习笔记
·
2024-02-12 23:12
c语言
数据结构
c语言
算法
开发语言
c#
改行学it
C语言
动态内存开辟和柔性数组
free的特点callocrealloc动态内存常见错误对NULL进行解引用对动态内存的越界访问对于不是动态开辟的内存free使用free释放动态开辟内存的一部分对同一块动态内存多次释放内存泄漏经典习题关于
C语言
内存分段柔性数组柔性数组的使用柔性数组的优点柔性数组的特点为什么存在动态内存开辟因为平时我们创建的数组都是
KissKernel
·
2024-02-12 23:11
C语言高阶
c语言
动态内存管理(柔性数组)
2.
c语言
为我们提供了一组库函数来实现这一目标:malloccal
peaky_blinders00
·
2024-02-12 23:41
c++
c语言
柔性数组
C语言
动态内存管理以及柔性数组
C语言
动态内存管理以及柔性数组一、为什么存在动态内存分配二、动态内存函数1、malloc2、free3、calloc4、realloc三、常见的动态内存错误1、对NULL指针的解引用操作2、对动态开辟空间的越界访问
求知.
·
2024-02-12 23:41
C语言学习
c语言
开发语言
C语言
——动态内存管理(柔性数组)
1.动态内存的意义是什么有时候我们需要的空间大小在程序运行的时候才能知道,那数组的编译时开辟空间的方式就不能满足了。我们之前常用的内存开辟一般是变量和数组,他们都是一次开辟固定大小的内存空间,不够灵活2.动态内存函数的介绍本次介绍的内存开辟函数有三个malloc、callc、realloc开辟后的内存在使用结束后要释放free这个函数用于释放内存所介绍的内存函数声明都在****中2.1malloc
Singularity_SY
·
2024-02-12 23:11
c语言
柔性数组
【
C语言
】realloc、malloc、calloc、柔性数组
需要云服务器等云产品来学习Linux的同学可以移步/-->腾讯云阿里云华为云parr=tmp;free(p->parr);//释放时,需要先释放p->parr指向的空间p->parr=NULL;free(p);//再将结构体指针p指向的空间释放p=NULL;return0;}完成开辟后s在内存中的存储如下图:4、柔性数组的优点1、在上述条件下,使用柔性数组方便动态内存释放。如果我们的代码是在一个给
蒋灵瑜
·
2024-02-12 23:11
C语言
c语言
动态内存管理
柔性数组
C语言
:动态内存管理(动态内存+柔性数组讲解)
目录1.为什么存在动态内存分配2.动态内存函数的介绍2.1malloc和freemallocfree2.2calloc2.3realloc3.常见的动态内存错误3.1对NULL指针的解引用操作3.2对动态开辟空间的越界访问3.3对非动态开辟内存使用free释放3.4使用free释放一块动态开辟内存的一部分3.5对同一块动态内存多次释放3.6动态开辟内存忘记释放(内存泄漏)4.C/C++程序的内存开
努力学c的楼下小王
·
2024-02-12 23:40
c语言
c语言
开发语言
进程间通信[二]
理解共享内存=共享内存块+共享内存对应的内核
数据结构
。shmget创建共享内存。形成再在shmget里面填充的key值当进程结束进程还存在ipc
huanqianhan
·
2024-02-12 22:27
Linux
linux
运维
服务器
进程控制[一]
进程=内核
数据结构
+进程代码和数据分配新的内存块和内核
数据结构
给子进程将父进程部分
数据结构
内容拷贝至子进程(类似于赋值或者初始化)添加子进程到系统进程列表当中fork返回,开始调度器调度一般而言我们没有加载的过程
huanqianhan
·
2024-02-12 22:56
linux
服务器
运维
C语言
字符函数的输入特殊用法——清空字符缓冲区
输入函数getchar()这个函数再读取的时候会返回一个数的ASCII值的int类型的值,也就意味着我们再输入的时候回车也是可以读取的空格也是可以读取的。getchar()的特殊用途清空字符缓冲区,当我们在使用scanf函数输入字符的时候,在确认的时候,会按下回车键,但是如果再次输入的时候,因为回车在字符缓冲区,打印的时候会优先读取字符缓冲区的字符,而不是本次输入的字符,因此打印出来的是回车符。演
huanqianhan
·
2024-02-12 22:26
C语言学习
c语言
c++
开发语言
QT中的
数据结构
(一)
在做Qt项目的时候,不要去用那些数组了,要用容器。用Qt专有的数据类型。QString和std::string是有区别的。QString标准C++提供了两种字符串一种以\为结尾的字符数组即C风格字符串另外一种是std::string.Qt提供了自己实现的QString.功能更强大QString是由一系列Qchar组成的字符串.QString使用两个字节16位表示一个字符。使用的是UTF-16双字节
懒回顾,半缘君
·
2024-02-12 22:25
Qt音视频开发
qt
c++
必须知道的
C语言
知识细节:左值和右值
知识总结
C语言
中左值和右值概念是来自赋值或复合赋值表达式。初学者会很容易迷惑,这里给出这两个概念总结。对于赋值表达式E1=E2,其中E1必须是可修改的左值,E2是右值。
明天会比今天更好
·
2024-02-12 22:52
C/C++
赋值表
编程语言
C++11 一些关键字 ,C++11左值右值和移动构造
auto关键字根据赋值表达式进行自动识别类型(不是c++11新的)
c语言
当中autointz=123;---->>>变成局部自动变量和局部变量作用一样c++重新实现auto的作用为了简化代码遍历容器的时候用
互联网农民工啾咪
·
2024-02-12 22:22
C++语法学习
c++
C语言
中的声明
文章目录
C语言
中的定义
C语言
中的声明声明复杂的声明使用typedef一个小程序
C语言
中的定义定义:只能出现在一个地方,用于确定对象类型和分配内存空间。
my_王老汉
·
2024-02-12 22:22
#
C语言
c语言
开发语言
关于左值和右值的一些问题总结
在
C语言
当中,我们经常会遇见一些平时感觉怎么用都不会出错的小知识点,但是再将它的难度提高一点点的时候,或者将它改变一点点,我们就不再将它用起来那么的得心应手。左值和右值正是一个这样的十足十的例子。
bailerong123
·
2024-02-12 22:51
专业
技术
指针
左值右值
C语言基础
Python Collections介绍
Python的Collections模块包含了一些实用的
数据结构
,这些
数据结构
作为Python内置数据类型(如list、dict、set等)的补充,可以在特定场景下提供更好的性能和功能。
田猿笔记
·
2024-02-12 22:20
python
知识库
python
Python 列表操作详解
在Python中,列表是一种常用的
数据结构
,它可以包含任意类型的元素,并且可以随时添加或删除元素。在这篇文章中,我们将详细介绍Python列表的一些常见操作。
田猿笔记
·
2024-02-12 22:19
python
知识库
python
开发语言
C语言
详解-冒泡排序与qsort()函数
1.冒泡排序原理及代码冒泡排序的原理其实很简单,从左到右,相邻元素两两进行比较,并根据大小关系进行交换,直至完成整组数据的排序。例如,对9,8,7,6,5,4,3,2,1,0,进行升序排序,其冒泡排序具体步骤如下:9876543210第一次8976543210第二次8796543210第三次8769543210............8765432109......7865432109......
edstiny
·
2024-02-12 22:46
c语言
开发语言
排序算法
算法
详解
C语言
-rand函数及猜数字小游戏
在利用
C语言
进行编程时,经常会遇到需要产生一个随机数。那么如何正确产生一个随机数呢?接下来我们将进行详细讨论,并给出随机数产生以及应用的一个实例。
edstiny
·
2024-02-12 22:16
c语言
开发语言
数据结构
初阶-时间复杂度
这篇博客讨论了在编程考虑时间复杂度的两个例子1.消失的数字数组nums包含从0到n的所有整数,但缺少了其中一个。请编写代码找出那个缺失的整数。你有办法在O(n)时间内完成吗?示例1:输入:[3,0,1]输出:2示例2:输入:[9,6,4,2,3,5,7,0,1]输出:8我们可以想到如下几种方法:方法1:首先利用qsort()函数进行排序,进而找出缺少的数字时间复杂度O(n*log2N)方法2:利用
edstiny
·
2024-02-12 22:16
数据结构
数据结构
——6.3 图的遍历
6.3图的遍历一、概念图的广度优先遍历树的广度优先遍历(层序遍历):不存在“回路”,搜索相邻的结点时,不可能搜到已经访问过的结点:若树非空,则根节点入队若队列非空,队头元素出队并访问,同时将该元素的孩子依次入队重复②直到队列为空图的广度优先遍历(Breadth-First-Search,BFS):搜索相邻的顶点时,有可能搜到已经访问过的顶点找到与一个顶点相邻的所有顶点标记哪些顶点被访问过需要一个辅
鸥梨菌Honevid
·
2024-02-12 21:44
408
数据结构
深度优先
算法
数据结构
——6.1 图的基本概念
一定是非空集无向图与有向图无向图无向边(简称边)无序对,例如(a,b)=(b,a),表示a和b两个点相连有向图有向边(简称弧)有序对,例如,称为从顶点v指向顶点w的弧,其中v称为弧尾,w称为弧头,≠,简单图与多重图(
数据结构
课
鸥梨菌Honevid
·
2024-02-12 21:14
408
数据结构
图论
算法
一、基础
数据结构
——2.队列——3.双端队列和单调队列2
参考资料:《算法竞赛》,罗勇军郭卫斌著本博客作为阅读本书的学习笔记,仅供交流学习。建议关注罗勇军老师博客3.单调队列与最大子序和问题不限制子序列长度问题——贪心法或动态规划HDOJ1003MAXSUMMaxSumTimeLimit:2000/1000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)ProblemDescriptionGiven
鸥梨菌Honevid
·
2024-02-12 21:44
Algorithm
数据结构
数据结构
——6.2 图的存储与基本操作
6.2图的存储与基本操作概念图的存储邻接矩阵存有向图和无向图根据邻接矩阵求度:无向图:第i个结点的度=第i行(或第列)的非零元素个数有向图:第i个结点的出度=第i行的非零元素个数第i个结点的入度=第i列的非零元素个数第i个结点的度=第i行、第i列的非零元素个数之和邻接矩阵法求顶点的度/出度/入度的时间复杂度为O(|V|)邻接矩阵存带权图(网)0与∞都表示两点间不存在边邻接矩阵的性能分析空间复杂度:
鸥梨菌Honevid
·
2024-02-12 21:43
408
数据结构
算法
【洛谷】P2669 [NOIP2015 普及组] 金币——
c语言
#includeintmain(){intk,sum=0,i=1,t=1;scanf("%d",&k);while(i<=k){intm=t;while(m!=0&&i<=k){sum+=t;m--;i++;}t++;}printf("%d",sum);return0;}
Lufee666
·
2024-02-12 21:12
洛谷循环结构
c语言
算法
数据结构
三角函数章节大总结
【第四章知识结构图】一、基础
知识总结
1.1诱导公式1.1.1A组$$sin(a+2k*pi)=sina$$$$cos(a+2k*pi)=cosa$$$$tan(a+2k*pi)=tana$$1.1.2B
·
2024-02-12 21:24
数学
假期作业 6
1.
C语言
中,运算对象必须是整型数的运算符是A。A、%B、/C、%和/D、*2.若有关系x≥y≥z,应使用A
C语言
表达式。
黑夜〆白天151
·
2024-02-12 21:07
c语言
上一页
47
48
49
50
51
52
53
54
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他