- 博客(28)
- 资源 (1)
- 收藏
- 关注
原创 c语言----数组
在程序设计中,为了方便处理数据把具有相同类型的若干变量按有序形式组织起来——称为数组。数组就是在内存中连续的相同类型的变量空间。同一个数组所有的成员都是相同的数据类型,同时所有的成员在内存中的地址是连续的。数组属于构造数据类型一个数组可以分解为多个数组元素:这些数组元素可以是基本数据类型或构造类型。按数组元素类型的不同,数组可分为:数值数组、字符数组、指针数组、结构数组等类别。int a[10];char s[10];
2025-01-12 20:33:37
1053
原创 c语言----函数指针和回调函数
函数指针变量常见的用途之一是把指针作为参数传递到其他函数,指向函数的指针也可以作为参数,以实现函数地址的传递。这一点和数组一样,因此我们可以用一个指针变量来存放这个入口地址,然后通过该指针变量调用函数。函数三要素: 名称、参数、返回值。C语言中的函数有自己特定的类型。函数参数除了是普通变量,还可以是函数指针变量。//函数指针 做函数的参数 — 回调函数。函数指针数组,每个元素都是函数指针。一个函数在编译时被分配一个。代表函数的入口地址。
2025-01-05 00:07:42
427
原创 c语言--预处理、编译、汇编、链接
使用 #define 指令定义宏,包括常量宏和函数宏(宏替换)。在编译预处理时,将程序中在该语句以后出现的所有的num都用100代替。这种方法使用户能以一个简单的名字代替一个长的字符串,在预编译时将宏名替换成字符串的过程称为“宏展开”。宏定义,只在宏定义的文件中起作用。1)宏名一般用大写,以便于与变量区别;2)宏定义可以是常数、表达式等;3)宏定义不作语法检查,只有在编译被宏展开后的源程序才会报错;4)宏定义不是C语言,不在行末加分号;5)宏名有效范围为从定义到本源文件结束;
2025-01-04 20:52:02
886
原创 无线电通信----算法(概念)
请注意,无线电通信领域的技术和标准在不断发展和演进,新的算法和技术不断涌现。因此,对于从事无线电通信研究和开发的人员来说,持续学习和关注最新研究成果是非常重要的。这些算法涵盖了从信号物理传输、信道编码、资源调度到网络协议优化的各个层面。不同算法在不同的应用场景下可以互相结合使用以实现最佳的通信效果。等多个环节发挥着关键作用。干扰辅助安全通信等算法用于增强通信系统的安全性。中涉及多种算法,这些算法在信号的。
2024-12-22 09:30:33
556
原创 无线电通信-----信号处理--算法
需要注意的是,虽然连续傅里叶变换在理论上提供了完整的频域表示,但在实际应用中,由于信号的采样和量化等限制,我们通常只能获得信号的近似频域表示。它特别适用于处理连续时间信号,如音频信号、图像信号等。傅里叶变换及其变体在信号处理领域具有广泛的应用,它们提供了一种强大的工具来分析和处理信号,揭示信号的频率成分,从而实现信号的滤波、去噪、压缩、增强、识别等目的。公式表示为:F(ω) = ∫(−∞ to ∞) f(t) e(−jωt) dt,其中f(t)是时域信号,F(ω)是频域信号,ω是角频率,j是虚数单位。
2024-12-22 09:02:47
876
原创 树-----------
树是一种非线性的数据结构,由n(n>=0)个有限结点组成一个具有层次关系的集合。树有一个特殊的结点,称为根结点,根节点没有前驱结点。除根节点外,其余结点被分成M(M>0)个互不相交的集合,其中每一个集合又是一棵结构与树类似的子树。每棵子树的根结点且只有一个前驱,可以有0个或多个后继。(也称为树的高度),它表示从树的根节点到最远叶节点之间的最长路径上所含有的节点数目(包括根节点和叶节点)。从根节点一直延伸到目标结点,所经过的所有结点成为节点M的层次路径(有且只有一条)。
2024-12-16 01:47:12
240
原创 数据结构--排序--选择排序类(C语言实现)
堆排序是一种基于二叉堆(Binary Heap)这种数据结构的排序算法,它是选择排序的一种。堆是一个近似完全二叉树的结构,并同时满足堆积的性质,即子结点的键值或索引总是小于(或者大于)它的父节点。
2024-12-16 00:42:27
699
原创 数据结构--排序--交换排序(C/C++语言,详细介绍快速排序)
通过两两比较待排序记录的关键字,并交换不满足顺序要求(即次序相反)的记录,直到整个序列变为有序序列。这种排序方法的在于通过交换元素的位置来达到排序的目的。交换排序主要包括以下两种算法: 冒泡排序、快速排序。
2024-12-15 03:43:06
951
原创 数据结构--排序--基数排序(C语言代码实现)
对于n个d位数(每位数的取值范围为0~k-1),LSD基数排序的时间复杂度为O(d*(n+k)),其中d是位数,n是待排序数组的大小,k是每位数的取值范围。(Radix Sort)是一种非比较型整数排序算法,思想是将整数按位数切割成不同的数字,然后按每个位数分别比较。MSD基数排序则从整数的最高位开始排序,这种方法的复杂度通常比LSD要高,因为它需要递归地处理子数组。:基数排序是稳定的排序算法,因为每一位的排序都是基于稳定排序算法(如计数排序或桶排序)进行的。如果数组中包含负数或者。
2024-12-14 23:13:07
1031
原创 数据结构--排序--归并排序(C语言实现)
(Merge Sort)是一种基于分治思想的有效、稳定、且采用递归实现的排序算法。它的基本思想是将一个待排序的数组分成若干个子数组,分别对每个子数组进行排序,然后再将已排序的子数组合并成一个有序的数组。归并排序的时间复杂度为O(n log n),且具有稳定性,即不会改变相等元素的相对顺序。
2024-12-14 00:23:21
501
原创 数据结构----排序1---插入排序类
排序方法是稳点: (1,2[a],2[b],3,4,5,6,7) 相等数,排序前后,位置不变排序方法是不稳点:(1,2[b],2[a],3,4,5,6,7)内部排序:排序记录数量不大。外部排序:排序记录数量大,内存不能一次容纳所有记录,需要对外存访问。
2024-12-12 08:16:17
172
原创 数据结构---队列(代码实现)
int rear;* }SqQueue;*设立一个队首指针front,一个队尾指针rear,分别指向队首和队尾元素。*初始化:front=rear=0.入队:将新元素插入到rear指向的位置,然后在加1.出队:删除front指向的元素,然后加1,并返回删除的元素队列为空:front=rear。队列为满:rear=MAX_QUEUE_SIZE-1或front=rear*在非空队列里,队首指针始终指向队头元素,而队尾指针始终指向队尾元素的下一个位置。
2024-12-08 02:10:07
426
原创 数据结构---栈(代码实现)
/#define STACK_SIZE 100 //栈初始向量的大小//#define STACKINCREMENT 10 //存储空间分配增量//{//栈不存在时,值为NULL//栈顶指针//当前已分配空间,已元素为单位//}SqStack;//#define MAX_STACK_SIZE 100 //栈(顺序静态)向量的大小//{// int Top;//栈顶变量//数组//2.栈(顺序静态)的初始化(建栈)s.Top=0;//空栈//{////
2024-12-06 21:30:56
807
原创 数据结构——循环链表,双向链表
循环链表的操作:对于单循环链表,除链表的合并外,其它的操作和单线性链表基本一致,循环链表:是一种头尾相连的链表,其特点是 最后一个节点的指针域指向链表的头结点。2.建立双向链表,先建立第一个结点,构成双向。判断是否为空: head->next == head。判断是否为表尾结点: p->next == head。1.双向链表的结点和类型的定义。//4.双向链表结构具有对称性。//5.双向链表的插入。//6.双向链表的删除。//a.头建双向链表。//b.尾建双向链表。
2024-12-04 03:59:39
205
原创 线性表———单链表
/2.动态的建立单链表:头插入法和尾插入法。//4.单链表插入,时间复杂度为o(n)//头插入法建表,时间复杂度为o(n)//尾插入法建表,时间复杂度为o(n)//安序号查找,时间复杂度为o(n)//安值查找,时间复杂度为o(n)//3.单链表的查询。
2024-12-01 04:16:15
191
原创 c语言结构体--定义与赋值
在C语言中,结构体是一种构造类型,它可以把不同的数据类型组合在一起,形成一个新的数据类型。以下是几种结构体的定义方式:以上就是C语言中结构体的几种定义方式。
2024-11-28 02:06:48
694
原创 python3知识整理2
==值是否相等,is不是比较相等。is比较的是两个变量的身份是否相等。###身份运算符 重点,返回值为bool is not is。#对象的三个特证 id value type。print(‘-----关系-------’)###逻辑运算符 重点操作bool类型,###成员运算符 重点,返回值为bool。###关系运算符 重点:返回一个bool值。# 1.5 #有小数。# > 右移动。
2024-11-20 08:17:33
262
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人