a.栈 stack堆栈--后进先出的线性表(就像一个单车道死胡同,进栈元素就像进入胡同的起初),插入删除元素只在表的一端进行 头文件:#include <stack> 定义:stack<int> s; 方法: 1.入栈 push() 2.出栈 pop() 3.访问栈顶元素 top() 4.判断是否为 ...
分类:
其他好文 时间:
2020-03-20 12:23:31
阅读次数:
53
队列是什么? 队列是一种特殊的线性表,特殊之处在于它只允许在表的前端进行删除操作,而在表的后端进行插入操作。 和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。 ——来自百度百科 队列,简单来说,就是数据排队(废话)。 打个比方,在超市买东西,假设我们是收银 ...
分类:
其他好文 时间:
2020-03-20 00:44:02
阅读次数:
64
二分查找也称折半查找(BinarySearch),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。#include<stdio.h>#include<stdlib.h>intmain(){intarr[]={1,2,3,4,5,6,7,8,9,10};intleft=0;intright=sizeof(arr)/siz
分类:
编程语言 时间:
2020-03-19 09:25:35
阅读次数:
75
typedef int Position; typedef struct LNode *List; struct LNode { ElementType Data[MAXSIZE]; Position Last; }; /* 初始化 */ List MakeEmpty() { List L; L = ...
分类:
其他好文 时间:
2020-03-18 15:16:41
阅读次数:
50
线性表的存储结构:顺序表和链表(每个节点不仅包含所存元素的信息,还包含元素之间逻辑关系的信息) ...
分类:
其他好文 时间:
2020-03-17 23:48:40
阅读次数:
58
List性能 Java提供的List就是一个线性表接口,而ArrayList LinkedList是两个List接口的典型实现:基于数组和基于链表的线性表。 Queue代表了队列,Deque代表了双端队列(也可以当作栈使用)。 一般来说,由于数组以一块连续内存区来保存所有的元素,所以随机访问的性能比 ...
分类:
其他好文 时间:
2020-03-16 14:34:56
阅读次数:
62
题目: 设有一个线性表 (e0, e1, …, en-2, en-1) 存放在一个一维数组A[arraySize]中的前n个数组元素位置。请编写一个函数将这个线性表原地逆置,即将数组的前n个原址内容置换为 (en-1, en-2, …, e1, e0)。 Array.h #pragma once # ...
分类:
编程语言 时间:
2020-03-15 11:50:19
阅读次数:
86
题目描述: 有黑桃1到13,13张牌,成某种顺序,魔术师可以从1开始数 ,数1,背面朝上的13张牌第一张就是1,然后放到桌面上,然后从1开始数,把第一张放在所有牌下面,数到2,翻开,就是2,再放到桌子上,以此此类推 #include<stdio.h> #include<stdlib.h> #defi ...
分类:
其他好文 时间:
2020-03-14 13:19:33
阅读次数:
56
1 //双向链表的结构 2 typedef struct DualNode 3 { 4 Elemtype data; 5 struct DualNode *prior; //前驱结点 6 struct DualNode *next; //后继结点 7 } DualNode,*DuLinkList; ...
分类:
其他好文 时间:
2020-03-14 13:15:04
阅读次数:
48
数组的概念 数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。 线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。除了数组,链表、队列、栈等也是线性表结构。 使用数组的优势在于:数组支持随机访问,根据下标随机访问的时间复杂度为 ...
分类:
编程语言 时间:
2020-03-14 13:02:25
阅读次数:
80