p45-01

news/2024/11/19 18:45:11/

1.设顺序表a中的数据元素递增有序,试设计一个算法,将x插入到顺序表的适当位置,以保持该表的有序性。

#include<iostream>
typedef int T;
using namespace std;//类的定义
template <class T>
class SqList   //顺序表类
{private:T *elem; //表首址int length; //表长int listsize;//表容量public:SqList(int m) ;//构造函数, 创建容量为m的空表~SqList();//析构函数,删除表空间void CreateList(int n);//创建具有n个元素的线性表void Insert(int i,T e);//在表中第i个位置插入元素int Locate(T e);//元素定位void ListDisp();//输出表元素
};
//类的实现
template<class T>
SqList<T>::SqList(int m)
{//构建函数,创建一表容量为m的空表elem=new T[m];// 申请表空间length=0;// 空表,表长为0listsize=m;//表容量为m
}template<class T>
SqList<T>::~SqList()//析构函数
{//释放表空间delete [] elem;length=0; listsize=0; 
}template<class T>
void SqList<T>::CreateList(int n)
{//创建表长度为n的顺序表if(n>listsize) throw"参数非法";int step,chushi;cout<<"请依次输入初始值和步长:";cin>>chushi>>step;for(int i=1;i<=n;i++)elem[i-1]=chushi+(i-1)*step;length=n;
}template<class T>
void SqList<T>::Insert (int i,T e)
{// 在第i个位置插入元素,如不能插入,显示异常信息if(length>=listsize) throw "上溢";if(i<1||i>length+1) throw "插入位置异常";for(int j=length;j>=i;j--)elem[j]=elem[j-1];elem[i-1]=e;length++;
}template<class T>
int SqList<T>::Locate (const T e)
{// 元素定位,若找到,返回该元素在表中的位序;末找到,返回0。for(int i=0;i<length;i++)if(elem[i]<=e&&elem[i+1]>=e) return i+1;return 0;
}template <class T>
void SqList<T>::ListDisp()
{//显示表内容for(int i=0;i<length;i++){cout<<elem[i]<<"\t";}cout<<endl;
}//主函数
void main()
{int n,I;T e;SqList<int> L(20);cout<<"请输入要创建的顺序表中元素个数:";cin>>n;cout<<endl;L.CreateList(n);cout<<endl;	L.ListDisp();cout<<endl;cout<<"请输入插入元素的值:";cin>>e;I=L.Locate(e);cout<<endl;L.Insert(I+1,e);  //返回的I为插入数e的前一个数的位置L.ListDisp();cout<<endl;
}



http://www.ppmy.cn/news/127794.html

相关文章

e8400 i7 matlab,E8400冲上4.5GHz! 499元P45也玩超频

新一代的P55i5已经来到了消费者面前&#xff0c;在全新的LGA1156接口i5/i7高性能的诱惑下&#xff0c;很多用户对目前的DIY市场产生了疑惑&#xff0c;本来打算近期装机的消费者开始持币观望&#xff0c;上一代的P45Core2是否还有吸引力呢&#xff1f;Intel当然十分了解消费者的…

P45 函数式编程

P45 函数式编程 1.Lambda的延迟执行2.使用 Lambda 作为参数和返回值 系统&#xff1a;Win10 Java&#xff1a;1.8.0_333 IDEA&#xff1a;2020.3.4 在兼顾面向对象特性的基础上&#xff0c;Java 语言通过 Lambda 表达式与方法引用等&#xff0c;为开发者打开了函数式编程的大门…

JavaScript 学习笔记 p45 - 50

对一个数进行开方&#xff1a; var result Math.sqrt(); console.time ("test");for (var i2; i<100; i) {var flag true;for (var j2; j<Math.sqrt(i); j) {if (i%j 0) {//如果进入判断则证明 i 不是质数&#xff0c;修改 flag 值为 falseflag false;//不…

P42-P45 认识函数

1. 函数的定义 函数是组织好的可以重复使用的代码段。函数可以提高应用的模块性和代码的重复使用率。 函数的参数(形式参数)可以支持多个。 def mufun1(name,times):for i in range(times):print(fI love {name}) mufun1(python,5) 2. 函数的返回值 函数的返回值&#xff0c;…

谷粒商城-基础篇-商品服务1-三级分类(P45-P58)

谷粒商城-基础篇2 一、商品服务-API-三级分类1、三级分类2、查出所有分类以及子分类2、配置网关路由与路径重写3、网关统一配置跨域4、查询-树形展示三级分类数据5、删除6、新增7、修改8、修改拖拽效果9、批量删除 商品服务-三级分类 一、商品服务-API-三级分类 1、三级分类 …

CSS基础(P45-P65)

一、基础认知 1.1CSS介绍 CSS&#xff1a;层叠式样表&#xff08;Cascading style sheets&#xff09;&#xff0c;用来给页面中的HTML标签设置样式 常见属性&#xff1a;color颜色、font-size字体大小、background-color背景颜色、width宽度、height高度 注意点&#xff1…

Day07 狂神说Java-MySQL>P40-P45

P40 Statement对象详解 executeUpdate和executeQuery 提取工具类 package com.hu.lesson02.utils;import java.io.IOException; import java.io.InputStream; import java.sql.*; import java.util.Properties;public class JdbcUtils {private static String driver null;…

寨板p45黑苹果10.12.6

这不是一个教程哈&#xff0c;只是只是一些记录吧。教程的话后续会写哈&#xff0c;有兴趣的朋友可以关注一下。前段时间喜欢上折腾黑苹果了&#xff0c;花费一些时间确实成功给几台电脑装上了黑苹果&#xff0c;其中最老的就是这台台式机了&#xff0c;机子配置没有鲁大师截图…