1  #include<bits/stdc++.h>
2 #include<vector>
3 #include<algorithm>
4 using namespace std;
5 #define MAXSIZE 100
6 typedef struct{
7 int *elem; //指针
8 int length; //顺序表长度
9 }SqList; //图书表中的顺序储存结构SqList
10
11
12 void InitList(SqList &L)//顺序表的初始化
13 {
14 L.elem=new int[MAXSIZE]; //为链表分配一个大小为MAXSIZE的数组空间
15 if(!L.elem) exit(OVERFLOW); //存储分配失败退出
16 L.length=0; //空表长度为0;
17
18 }
19 void CreatList(SqList &L)
20 {
21 cout<<"请输入顺序表长度"<<endl;
22 int num;
23 cin>>num;
24 cout<<"请传入数值"<<endl;
25 for(int i=0;i<num;i++)
26 {
27
28 cin>>L.elem[i];
29 L.length++;
30 }
31 }
32 int ShowList(SqList &L)
33 {
34 cout<<"目前顺序表为:"<<endl;
35 if (L.length == 0)
36 {
37 return 0;
38 }
39 for(int i=0;i<L.length;i++)
40 {
41 cout<<L.elem[i]<<"\t";
42 }
43 cout<<endl;
44 }
45 bool GetElem(SqList L)//顺序表的取值
46 {
47
48 int p;
49 int e;
50 cout<<"请输入要查找的位置"<<endl;
51 cin>>p;
52 if(p<1||p>L.length) return false ;
53 e=L.elem[p-1];
54 cout<<"您要查找的值是:"<<e<<endl;
55 }
56
57 int LocateElem(SqList L)//顺序表的查找
58 {
59 int e;
60 cout<<"请输入要查找的值"<<endl;
61 cin>>e;
62 for(int i=0;i<L.length;i++)
63 if(L.elem[i]==e)
64 cout<<"查询成功,查询的位置在"<<i+1<<endl;
65 return 0;
66 }
67
68 bool ListInsert(SqList &L)//在第i个位置插入新元素e,i的取值合法范围是1<=i<=L.le==length+1
69 {
70 int i;
71 cout<<"请输入要在第几个位置插入数字"<<endl;
72 cin>>i;
73 int e;
74 cout<<"请输入要插入的数字"<<endl;
75 cin>>e;
76 if((i<1)||(i>L.length+1))return false;
77 if(L.length==MAXSIZE)return false;
78 for(int j=L.length-1;j>=i-1;j--)
79 L.elem[j+1]=L.elem[j];
80 L.elem[i-1]=e;
81 ++L.length;
82 return true;
83
84 }
85 bool ListDelete(SqList &L)
86 {
87 int i;
88 cout<<"请输入要在第几个位置删除数字"<<endl;
89 cin>>i;
90 if((i<1)||(i>L.length))return false;
91 if(L.length==MAXSIZE)return false;
92 for(int j=i;j<=L.length-1;j++)
93 L.elem[j-1]=L.elem[j];
94 --L.length;
95 return true;
96
97
98 }
99 int main(){
100 SqList L;
101 InitList(L);//顺序表的初始化
102 CreatList(L);//赋值
103 ShowList(L);//打印
104 GetElem(L);//顺序表的取值
105 ShowList(L);//打印
106 LocateElem(L);//顺序表的查找
107 ShowList(L);//打印
108 ListInsert(L);//顺序表的插入
109 ShowList(L);//打印
110 ListDelete(L);//顺序表的删除
111 ShowList(L);//打印
112 return 0;
113 }

这是我学的顺序表,牛逼1

建民哥哥的AV的更多相关文章

  1. OpenCASCADE Rational Bezier Curves

    OpenCASCADE Rational Bezier Curves eryar@163.com Abstract. Although polynomials offer many advantage ...

  2. 《大道至简》第一章读后感(java语言伪代码)

    中秋放假之际读了建民老师介绍的<大道至简>的第一章,其中以愚公移山的故事形象的介绍向介绍编程的精义.愚公的出现要远远早于计算机发展的历史,甚至早于一些西方国家的文明史.但是,这个故事许是我 ...

  3. “胡”说IC——菜鸟工程师完美进阶

    “胡”说IC——菜鸟工程师完美进阶(数十位行业精英故事分享,顶级猎头十多年来经验总结,对将入或初入IC电子业“菜鸟”职业发展.规划的解惑和点拨.) 胡运旺 编著   ISBN 978-7-121-22 ...

  4. 智能指针 shared_ptr 解析

    近期正在进行<Effective C++>的第二遍阅读,书里面多个条款涉及到了shared_ptr智能指针,介绍的太分散,学习起来麻烦.写篇blog整理一下. LinJM   @HQU s ...

  5. excel表转换成txt导入

    insert into t_user(userid,username,usercard,corpid,roleid,phone,useradd,userpost,usermail,userpasswd ...

  6. 201621123075 week5 继承、多态、抽象类和接口

    1. 本周学习总结 1.1 写出你认为本周学习中比较重要的知识点关键词 接口.abstract.implements.comparable 1.2 尝试使用思维导图将这些关键词组织起来.注:思维导图一 ...

  7. Java第一次考试作业

    这次考试感觉自己充分的意识到自己的不足,对于Java没有系统的理解,敲程方面也有很大问题,本次程序题目为ATM机的账户记录Account有账户的唯一性标识,用户的姓名,操作日期(Date),操作类型, ...

  8. 第一周java测验感想

     在正式开学的第一周,建民老师就给我们来了一个下马威.我本身的编程基础比较差,不知道怎么去想,怎么去一步步的去完成这么一个工程.所以我在星期四的下午十分的痛苦…因为不知道怎么搞嘛.尽管在暑假的时候看了 ...

  9. java课上测试心得

    放暑假之前,建民老师就给我们布置了每一天学习两小时的代码,但是自己的不重视,根本就没有达到这个要求,简单学了一点点基本的东西,然后在开学的第一堂课上,连续三个小时的敲代码,让我意识到了自己的问题,一个 ...

  10. java测试感想

    package ATM; public class Account { private String accountID; private String accountname; private St ...

随机推荐

  1. DNS反向解析

    一:创建反向解析区 1.和创建正向解析区的步骤类似,选主要区域 这里设置的IP是192.168.1,一直点确定即可 2.指针记录即反向解析记录,记录ip对应的域名,是反向解析区最常用的记录 输入ip和 ...

  2. SP277 CTGAME - City Game 题解

    题目传送门 前置知识 单调栈 解法 令 \(f_{i,j}(1 \le i \le n,1 \le j \le m)\) 表示从 \((1,j)\) 到 \((i,j)\) 中以 \((i,j)\) ...

  3. Linux 下配置Oracle开机自动启动

    一./etc/oratab说明 直接使用cat 查看这个文件: gg1:/home/oracle> cat /etc/oratab # # This file is used by ORACLE ...

  4. OCP试题解析之053-61 RMAN set command id to

    61.You frequently have multiple RMAN sessions running, and you want to be able to easily identify ea ...

  5. Java集合框架学习(十五) ListIterator接口详解

    ListIterator介绍 一个为list对象设计的迭代器,允许开发人员在2个方向上迭代,修改和获得list迭代位置. ListIterator 没有所谓当前元素. 它的游标位置总是位于previo ...

  6. Python中 r'', b'', u'', f'' 的含义

    python中 r'', b'', u'', f'' 的含义   r/R:非转义的原始字符串 与普通字符相比,其他相对特殊的字符,其中可能包含转义字符,即那些,反斜杠加上对应字母,表示对应的特殊含义的 ...

  7. win32 - 将文件的访问权限给特定的用户

    需要首先获取特定用户的SID. 这是一些步骤, 验证输入参数. 为可能足够大的SID和域名创建缓冲区. 在循环中,调用LookupAccountName以检索提供的帐户名的SID.如果SID的缓冲区或 ...

  8. pinia

    Pinia学习 Vue3中 使用 官网:https://pinia.web3doc.top/introduction.html 安装 yarn add pinia # 或者使用 npm npm ins ...

  9. 非常好用的VS Code插件

    Auto-Collapse Explorer 如果希望在VS Code编辑器中打开文件的时候自动展开对应的目录结构,需要开启"Auto Reveal". 具体设置步骤: 1.打开设 ...

  10. 具备有效期的localStorage存储

    具备有效期的localStorage存储 类方式 // 具备有效期的localStorage存储-类方式. class LocalStorageWrapper { // 存储数据到localStora ...