跟了几节王道课,发现在解决线性表问题时我们只需要形象地画出该线性表即可更好、更快地解决问题,对于考研者和数据结构初学小白来说很适用! 1、认识线性表 线性表:由n个数据元素组成的有限序列 线性表由存储结构分为:顺序存储和链式存储 线性表的顺序存储结构称为顺序表(具有随机和顺序存取特性),如:数组 线 ...
分类:
其他好文 时间:
2020-06-28 00:35:12
阅读次数:
102
查找 查找 在数据结构中寻找满足某种条件的数据元素的过程 查找表:用于查找的数据集合,由同一种数据类型(或记录)组成,可以是一个数组或链表等数据类型 操作:查询、检索、插入、删除(只有前两种的称为静态查找表、包含后两种的称为动态查找表) 关键字:数据元素中唯一标识该元素的某个数据项的值 平均查找长度 ...
分类:
其他好文 时间:
2020-06-28 00:10:47
阅读次数:
78
一.知识要点 若在查找的同时对表做修改操作(如插入和删除),则相应的表称之为动态查找表。 平均查找长度 设置监视哨的顺序查找 ST.R[O] .key=key; for(i=ST.length;ST.R[i] .key!=key;--i); return i;//在顺序表ST 中顺序查找其关键字等于 ...
分类:
其他好文 时间:
2020-06-27 22:48:38
阅读次数:
64
一、思维导图: 二、需要留意的点 链式结构可以进行二分查找,但是不能在对数时间内完成,因为要对数字下标进行随机访问,实际都得遍历一遍,需要O(n) 二分查找应用场景的局限性: (1)基于顺序表的存储结构; (2)针对有序数据; (3)数据量小且比较操作不耗时时 (4)数据量不能太大(需要连续的内存空 ...
分类:
其他好文 时间:
2020-06-27 20:12:59
阅读次数:
66
一、第七章内容小结 1. 查找的基本概念 2. 线性表的查找 ① 顺序查找:从表的一端开始依次将记录的关键字和给定值进行比较,某记录的关键字和定值相等则查找成功;反之,扫描整个表未找到相等记录,则查找失败。顺序查找适用于线性表的顺序存储结构和链式存储结构。 2-1基于顺序表的顺序查找算法: 1 in ...
分类:
其他好文 时间:
2020-06-27 16:03:50
阅读次数:
78
本章主要学习了查找的相关知识。关于查找,有以下几种基本概念: (1)查找表。按照数据类型可分为数组和链表;按照具体存储逻辑又可分为顺序表、哈希表等等。 (2)关键字。作为待查找的元素,在查找表中进行检索。 (3)动态查找。若表中没有所查的关键字,则将关键字按照原表的规律添加在表中,形成一个含有关键字 ...
分类:
其他好文 时间:
2020-06-27 00:32:29
阅读次数:
67
1299. 将每个元素替换为右侧最大元素 直接从后往前更新最大值存入数组中,然后逆置数组,删去最前的,在随扈补一个-1即可。 class Solution { public: vector<int> replaceElements(vector<int>& arr) { vector<int>v; ...
分类:
其他好文 时间:
2020-06-26 18:16:47
阅读次数:
56
1.顺序表实现栈 #include<iostream> #define MaxSize 50 using namespace std; int push(int a[],int &top){ if(top==MaxSize){ return 0; } int value; cin>>value; a ...
分类:
其他好文 时间:
2020-06-22 14:39:49
阅读次数:
95
#include <stdio.h> #include <string.h> #include <stdlib.h> typedef struct { int data[8]; int length; }SqNode; int FindEle(SqNode &L,int x){ int j=0; f ...
分类:
其他好文 时间:
2020-06-21 23:25:18
阅读次数:
52
1.顺序表的最值 int maxnum(int a[],int n){ int ma=a[0]; int max_p=0; for(int i=0;i<n;i++){ if(a[i] > ma){ ma=a[i]; max_p=i; } } return max; } int minnum(int ...
分类:
其他好文 时间:
2020-06-21 17:46:47
阅读次数:
37