自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据结构--哈希表

首先,我们定义键值对和哈希表的数据结构。#define TABLE_SIZE 100 // 哈希表的大小#define KEY_SIZE 50 // 键的最大长度#define VALUE_SIZE 100 // 值的最大长度// 指向下一个节点,处理冲突// 哈希表数组// 初始化哈希表i++) {通过本文的讲解和代码示例,我们学习了如何用C语言实现哈希表并进行键值对的查找。哈希表是一种高效的查找数据结构,适用于快速查找、插入和删除操作。

2024-05-25 03:54:10 487

原创 数据结构--查找(顺序表)

首先,我们定义键值对和顺序表的数据结构。#define MAX_SIZE 100 // 顺序表的最大容量#define KEY_SIZE 50 // 键的最大长度#define VALUE_SIZE 100 // 值的最大长度// 存储键值对的数组int length;// 顺序表的当前长度} SeqList;// 初始化顺序表通过本文的讲解和代码示例,我们学习了如何用C语言实现键值对的顺序查找。顺序查找是一种简单而有效的查找方法,适用于键值对的查找。

2024-05-25 03:50:41 280

原创 使用C语言实现Prim算法和Dijkstra算法

在图论中,Prim算法和Dijkstra算法是两种经典的图算法。Prim算法用于找到加权无向图的最小生成树(MST),而Dijkstra算法用于找到单源最短路径。本文将介绍这两种算法,并提供完整的C语言实现。

2024-05-25 03:47:37 244

原创 图的遍历和基本操作

首先,我们定义图的结构和相关操作。// 邻接表中的节点int dest;// 邻接表} AdjList;// 图结构} Graph;// 创建一个新的邻接表节点// 创建一个图,包含V个顶点// 创建邻接表i < V;++i)// 向图中添加边// 添加从src到dest的边// 如果是无向图,添加从dest到src的边。

2024-05-25 03:44:36 236

原创 N皇后问题

N皇后问题是经典的回溯算法问题之一。目标是在一个N×N的棋盘上放置N个皇后,使得它们彼此之间不能攻击,即任意两个皇后不能位于同一行、同一列或同一斜线上。N皇后问题不仅在算法研究中具有重要地位,而且在人工智能、计算机博弈等领域也有广泛应用。本文将通过一个完整的C语言代码示例,展示如何实现N皇后问题。

2024-05-25 03:41:01 164

原创 树--哈夫曼树

哈夫曼树(Huffman Tree)是一种常用于数据压缩的二叉树,其主要思想是用较短的编码表示频率较高的字符,从而达到压缩数据的目的。哈夫曼树在信息编码、数据压缩等领域有广泛的应用。本文将通过一个完整的C语言代码示例,展示如何实现哈夫曼树及其编码。

2024-05-25 03:38:44 1340

原创 数据结构--树

在这篇博客中,我们将使用C++代码展示如何通过先序遍历的方法来构建二叉树,并展示几种常见的遍历方法:先序遍历、中序遍历和后序遍历,包括递归和非递归实现。这一步非常重要,因为在C++中,未初始化的指针会指向未知的内存地址,这会导致未定义行为。本文介绍了如何使用先序遍历构建二叉树,并展示了递归和非递归方法实现的先序、中序和后序遍历。使用栈来模拟递归的过程,记录最后访问的节点以决定何时访问右子树。使用栈来模拟递归的过程,逐步访问每一个节点。使用栈来模拟递归的过程,逐步访问每一个节点。4. 遍历二叉树的各种方法。

2024-05-21 17:47:32 292 1

原创 压缩矩阵(稀疏矩阵)的转置

这段代码实现了一个压缩矩阵(稀疏矩阵)的基本操作,包括初始化、打印和转置。

2024-05-13 16:54:23 257 1

原创 数据结构--二维数组

这段代码定义了两种二维数组的数据结构和相关操作,包括动态分配的二维数组和静态分配的二维数组。下面是这段代码的运行结果。

2024-05-13 16:26:40 423 2

原创 数据结构--循环队列

这段代码实现了一个基于静态数组的循环队列(环形队列),包括队列的初始化、入队、出队和打印队列中的元素等功能。这段代码展示了如何使用静态数组和模运算来管理循环队列的头尾指针,从而实现一个固定大小的循环队列。代码中使用了 malloc 来动态分配内存.循环队列通常要将尾部空出,以免出现当队满时,rear指针和front指针相等,从而无法判断是队满还是队空。

2024-05-08 20:21:55 313 1

原创 数据结构--链队

这段代码展示了如何使用结构体和指针在 C++ 中实现基本的队列操作。代码中使用了 malloc 来动态分配内存,使用 free 来释放内存,确保了内存管理的正确性。这段代码实现了一个基于链表的队列(链队),包括队列的初始化、入队、出队和打印队列中的元素等功能。

2024-05-08 20:09:24 394 1

原创 汉诺塔问题--递归实现

【代码】汉诺塔问题--递归实现。

2024-05-08 20:00:15 275 1

原创 顺序栈的应用--括号匹配

括号匹配是一个在计算机科学和编程中常见的问题,通常涉及到检查一个字符串中的括号是否正确地配对。这通常意味着每一个开括号(如。这个算法的时间复杂度是 O(n),其中 n 是字符串的长度。它只需要一次遍历字符串,并且每个字符的处理时间都是常数。)都必须有一个对应的闭括号(如。),并且它们的顺序必须是正确的。

2024-04-26 22:43:07 429 1

原创 数据结构-栈的实现

1.结构体定义:使用 `typedef struct CharStack` 定义了一个栈结构,包含一个整数 `top` 表示栈顶位置,和一个字符数组 `data` 存储栈中的元素。2.初始化栈:`charStackInit` 函数创建一个栈实例,初始化栈顶 `top` 为-1,表示栈为空。4.压栈操作:`push` 函数将一个字符压入栈中。3.输出栈内容:`outputStack` 函数遍历栈,从栈底到栈顶输出所有元素。7. 主函数:`main` 函数调用 `pushPopTest` 函数进行测试。

2024-04-24 19:51:49 403

原创 数据结构的应用-多项式的和

本篇文章实现了多项式求和,用结构体存放了一项的系数和指数,每一项用链表连接,求和方法采用的是用现成的链表,将结果直接,而没有创建新的链表,它遍历两个链表,根据指数大小合并节点或者合并系数。这个代码如果对于两个链表(链表里面的多项并没有按照指数由小到大的顺序排列)的情况不适用。

2024-04-24 18:14:20 542

原创 数据结构-双向链表

insertElement函数在链表的指定位置插入一个新的元素。首先找到插入位置的前一个节点,然后创建新节点并调整相应的指针,以将新节点插入到链表中。deleteElement函数从链表中删除指定的元素。首先找到该元素的前一个节点,然后调整指针以从链表中移除该元素,并释放其内存。initLinkList函数创建一个头节点,数据域为空字符,前驱和后继指针都设置为NULL,表示一个空的双向链表。本段代码简单实现了双向链表的基本操作,包括初始化链表、插入元素、删除元素、打印链表内容以及一个基础的地址测试。

2024-04-17 20:38:48 1151 1

原创 数据结构-静态链表

这段代码实现了一个静态链表的基本操作,包括初始化、插入元素、删除元素和打印链表内容。静态链表使用数组模拟链表结构,每个节点包含数据域和指向下一个节点索引的next域。该代码中nodes为一个静态链表的指针,used是一个布尔类型的数组,用来表示静态链表对应位置是否存放了data,next是一个整数,表示下一个元素的相对地址,用来索引下一个元素。1.静态链表的初始化。3.链表中元素的插入。

2024-04-17 19:45:55 1072

原创 数据结构-单链表

(2)尾插法(在链表尾部添加一个元素)(4)删除链表中任意一个元素。(3)在链表中间插入元素。(5)打印链表中的元素。5.任意位置插入新元素。2.初始化链表头节点。

2024-04-08 20:50:59 442

原创 数据结构--顺序表功能的实现

这段代码实现了一个固定大小的顺序表(Sequential List)的基本操作,包括初始化、插入、删除、查找、获取元素、清空列表以及输出列表和内存地址信息。顺序表使用结构体SequentialList表示,其中包含一个整型数组data用于存储元素,和一个整型变量actualLength用于记录当前顺序表的实际长度。通过固定大小的数组来存储数据,使得数据的访问速度快,但同时也限制了顺序表的最大容量。6.删除下标为paraposition的元素,并返回其值。8.通过元素返回元素下标,元素不存在,返回-1。

2024-04-06 19:45:11 507

空空如也

空空如也

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

TA关注的人

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