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. UVA12467 Secret Word 题解

    题目传送门 前置知识 前缀函数与 KMP 算法 解法 考虑将 \(S\) 翻转后得到 \(S'\),然后就转化为求 \(S'\) 的一个最长子串使得其是 \(S\) 的前缀.使用 KMP 求解即可. ...

  2. JS LeetCode 566. 重塑矩阵题解分析,数组降维的几种方式

    壹 ❀ 引 今天是过完年到公司的第二天,年前因为封版,到今天我们小组是第一个发版的组,然后就各种踩坑,到现在还在公司等运维解决jenkins问题,闲着也是闲着,做一道算法题,简单记录下解题思路,本题来 ...

  3. 适用于Spring Boot Jar的启停部署脚本

    shell脚本参数 使用-z或-n对一个变量判空时, 若直接使用[ -n ARG ]这种形式,当{ARG}中有空格将会报错, line 27: [: sd: binary operator expec ...

  4. 【Unity3D】分离路面导航

    1 前言 ​ 导航系统中介绍了导航的基本用法,但是不能解决分离路面导航问题.如下图,胶囊体需要导航到立方体位置,但是路面不连续,烘焙(Bake)导航网格后,断开处也没有导航网格,因此,胶囊体导航到分离 ...

  5. Swoole从入门到入土(21)——毫秒定时器

    Swoole提供了毫秒精度的定时器,所有操作都是内存操作,无额外的IO开销. 下面让我们一起详细了解每个函数的作用: 1) 函数tick:设置一个间隔时钟定时器,这个定时器会持续触发 Swoole\T ...

  6. Springboot+Vue+ElementUI实现的宿舍管理系统

    项目说明 doman是一个基于Springboot+Vue实现的前后端分离的宿舍管理系统.项目为本人亲手打造,需要的朋友可以拿去做个修改也是不错的.大神请忽略:) 项目功能 详细请看功能演示: Spr ...

  7. 使用GDI时如何确定是否有内存泄漏

    在创建GDI对象时,比如创建笔,画刷等对象时,在调用完之后忘记删除对象了,会造成内存泄漏 我们可以通过任务管理器来快速的查看 启动任务管理器(右键单击Windows任务栏以选择任务管理器) 在Wind ...

  8. 美团面试:说说OOM三大场景和解决方案? (绝对史上最全)

    首先,咱们先聊聊,什么是OOM? 小伙伴们,有没有遇到过程序突然崩溃,然后抛出一个OutOfMemoryError的异常?这就是我们俗称的OOM,也就是内存溢出.简单来说,就是你的Java应用想要的内 ...

  9. python运算符---day04

    1.python运算符 (1)算数运算符: + - * / // % ** (2)比较运算符: > < >= <= == != (3)赋值运算符:= += -= *= /= / ...

  10. py.path模块

    # https://py.readthedocs.io/en/latest/path.html import os dir_path = "/home/lw/" os.path.j ...