数据结构与算法
文章平均质量分 50
数据结构和算法介绍和使用
阿运河
公众号: 阿运河
展开
-
模拟算法介绍
2、题目:求在1到n中,所有数位中含有2、0、1、9的数字的和。原创 2024-09-25 11:50:27 · 219 阅读 · 0 评论 -
常见排序算法
将数组的第一个数认为是有序数组,从后往前(从前往后)扫描该有序数组,把数组中其余n-1个数,根据数值的大小,插入到有序数组中,直至数组中的所有数有序排列为止。类似与"扑克牌",从桌上抓牌,一张一张的抓,并进行比较排序。通过选取一个基准值,将待排序序列分为两部分:一部分是所有小于基准值的元素,另一部分是所有大于或等于基准值的元素。冒泡排序重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。原创 2024-09-25 11:11:58 · 344 阅读 · 0 评论 -
数据结构——树
红黑树在实际应用中,插入和删除节点的操作会比AVL树要快,所以如果你的应用中,插入和删除的操作比较频繁,那么使用红黑树可能会有更好的性能。在AVL树中,任何节点的两个子树的高度最大差别为1,所以它也被称为高度平衡树。AVL树因为这个严格的平衡条件,所以在需要频繁查找的情况下,表现优于红黑树。总结一下,如果你的应用中查找操作更频繁,那么AVL树可能会是更好的选择。定义: 高度平衡的二叉树, 任何节点的两个子树的高度最大差别为1。定义:左边的节点树,比右边的节点树大。原创 2024-09-23 13:26:02 · 1351 阅读 · 0 评论 -
数据结构——串
是一直特殊的线性表, 其中数据元素之间具有相同的类型,即字符。在软件开中,日志记录是常见的操作。日志通常以文本形式存储,包含时间戳、事件类型、消息内容等信息。在数据库操作中,字符串是常见的数据类型。例如,用户信息、产品信息、订单信息等通常以字符串的形式存储和检索。例如,HTTP请求和响应通常使用字符串格式的数据进行传输和解析。在自然语言处理(NLP)中,字符串被用来表示文本数据。例如,词干提取、词性标注、情感分析等。在加密和解密操作中,字符串是主要的操作对象。例如,使用加密算法对字符串进行加密或解密。原创 2024-09-20 13:28:53 · 299 阅读 · 0 评论 -
数据结构——栈
递归调用是函数调用的一种特殊形式,它涉及到一个函数直接或间接地调用自身。在递归过程中,栈用于保存每一层递归的状态信息,包括参数、局部变量和返回地址。每次函数调用时都会将当前函数的信息(如返回地址、局部变量等)压入栈中。当函数执行完毕后,这些信息会从栈中弹出,以便程序能恢复到调用前的状态。在操作系统中,栈用于内存管理,在处理程序调用和系统中断时。每个线程或进程都有自己的栈空间,用于保存局部变量和临时数据。定义: 是一种先进后出(First In Last Out )的线性表, 只允许一端插入或删除的。原创 2024-09-11 09:43:04 · 324 阅读 · 0 评论 -
数据结构----数组
数组中的每一个数据叫做数组元素 Element,数组中的每个元素都有一个序号,这个序号从 0 开始,称为下标 Index,例如,a[0] 表示第0个元素,a[3] 表示第3个元素。它不需要在编译时就确定大小,它的大小在程序运行过程中确定,所以可以根据程序需要而灵活的分配数组的大小,相比静态数组,它更“灵活”、“自由”。数组 Array是一组数据的集合 ,在c语言中,比如:字符串 char ,是一种数组,字符串由多个字符构成;:是在编译时,要确定数组大小, 因此为了防止内存溢出,需要合适定义数组大小。原创 2024-09-03 21:18:25 · 191 阅读 · 0 评论 -
归并排序
归并排序#include <iostream>using namespace std;const int N = 1000010;int n;int q[N], tmp[N];void merge_sort(int q[], int l, int r){ //递归的终止情况 if (l >= r) return ; //第一步:分成子问题 int mid = (l + r)/2; //第二步:递归原创 2020-12-15 15:57:11 · 141 阅读 · 0 评论 -
快速排序算法
快速排序算法算法证明使用算法导论里的循环不变式方法快排模板(以j为分界)快排属于分治算法,分治算法都有三步:分成子问题递归处理子问题子问题合并#include <iostream>using namespace std;const int N = 100010;int q[N];void quick_sort(int q[], int l, int r){ if (l >= r) return ; int i = l - 1原创 2020-11-28 22:20:53 · 158 阅读 · 0 评论