删除线性表中为x的元素的三种简单算法。
//删除线性表中不为x的元素。
void delete_list(Sqlist &L,int x){
int k = ;
for(int i=;i < L.length;i++){
if(L.data[i] != x){
L.data[k] = L.data[i];
k++;
}
}
L.length = k;
} //先统计不为x的个数,然后将线性表中不为x的数据向前移动K个。
void delete_list(Sqlist &L,int x){
int k = ,i=;
while(i < L.length){
if(L.data[i] == x){
k++;
}
else{
L.data[i-k] = L.data[i];
}
i++;
}
L.length = L.length - k;
} //用头指针和尾指针同时向中间靠拢来实现。
void delete_list(Sqlist &L,int x){
int k = ,temp =;int *head = L.data[],*nail = L.data[L.length-];
while(head != nail){
if(*head == x){
while(*nail == x){
nail--;
}
temp = *head;
*head = *nail;
*nail = temp;
}
else{
head++;
} }
}
删除线性表中为x的元素的三种简单算法。的更多相关文章
- 删除线性表中所有值为x的元素
时间复杂度O(n),空间复杂度O(1). 简单的问题两种不同的思路. 代码: #include <stdio.h> #define MAX 100 struct sqlist{ int d ...
- 线性表中顺序表的的理解和实现(java)
线性表的顺序表示指的是用一组地址连续的存储单元以此存储线性表的数据元素,这种表示也称作线性表的顺序存储结构或顺序映像.通常,称这种存储结构的线性表为顺序表.特点是:逻辑上相邻的数据元素,其物理次序上也 ...
- 已知长度为n的线性表采用顺序结构,写一算法删除该线性表中所有值为item的元素
/** * @author:(LiberHome) * @date:Created in 2019/2/27 23:34 * @description: * @version:$ */ /*已知长度为 ...
- Django学习路5_更新和删除数据库表中元素
查找所有的元素 Student.objects.all() 查找单个元素 Student.objects.get(主键=值) 主键 pk = xxx 更新数据库数据后进行保存 stu.save() 删 ...
- PHP数据结构之三 线性表中的单链表的PHP实现
线性表的链式存储:用一组任意的存储单元存储线性表中的数据元素.用这种方法存储的线性表简称线性链表. 链式存储线性表的特点:存储链表中结点的一组任意的存储单元可以是连续的,也可以是不连续的,甚至是零散分 ...
- PHP数据结构之二 线性表中的顺序表的PHP实现
线性表 (一)基本特点:最基本.最简单.最常用的一种数据结构 在这种结构中: 1.存在一个唯一的被称为“第一个”的数据元素: 2.存在一个唯一的被称为“最后一个”的数据元素: 3.除第一个元素外,每个 ...
- YTU 2601: 熟悉题型——填空题(删除线性表节点)
2601: 熟悉题型--填空题(删除线性表节点) 时间限制: 1 Sec 内存限制: 128 MB 提交: 357 解决: 212 题目描述 给出一串具体长度的数据,删除指定数据. 已经给出部分代 ...
- 完成代码将x插入到该顺序有序线性表中,要求该线性表依然有序
#include <stdio.h> #include <malloc.h> int main(void) { int i, n; double s = 1.3; double ...
- c++实现线性表中的顺序表(数据结构课程作业)
一.题目简介 实现顺序表的创建.初始化.赋值.插入.删除.按数据查找元素位置.按元素位置查找数据.清空.删除 的操作,以上操作用可用菜单选项完成 二.源程序代码 #include<iostrea ...
随机推荐
- 第十三章 ZYNQ-MIZ701 TIMER定时器中断
上篇文章实现了了PS接受来自PL的中断,本片文章将在ZYNQ的纯PS里实现私有定时器中断.每隔一秒中断一次,在中断函数里计数加1,通过串口打印输出. 本文所使用的开发板是Miz701 PC 开发环 ...
- 【leetcode】153. 寻找旋转排序数组中的最小值
题目链接:传送门 题目描述 现有一个有序数组,假设从某个数开始将它后面的数按顺序放到了数组前面.(即 [0,1,2,4,5,6,7] 可能变成 [4,5,6,7,0,1,2]). 请找出数组中的最小元 ...
- .Net C# RSA签名和验签重写
namespace com._80community.unittest.CUP { /// <summary> /// CUP Client /// </summary> pu ...
- SimpleDateFormat线程安全问题
今天线上出现了问题,从第三方获取的日期为 2019-12-12 11:11:11,通过SimpleDateFormat转换格式后,竟然出现完全不正常的日期数据,经百度,得知SimpleDateForm ...
- C调用C++(C++封装以及C对其调用)
C调用C++(C++封装以及C对其调用) 来源 https://blog.csdn.net/wonengguwozai/article/details/89854781 相关知识提点:很经典的exte ...
- 10 TCP限流技术
TCP限流是因为让接收方充分接受完消息,保证数据安全,不会丢失 一.窗口机制介绍 发送端和接收端都拥有一个窗口,当发送端发送数据时,落进窗口的数据被发送,当接受端接受数据时,落进接收端窗口的数据将会被 ...
- Windows 下 nvm, node, npm 的下载、安装与配置
主要解决的问题 下载安装完 nvm 和 node 后,缺失 npm 文件 执行 jasmine 等命令时提示「不是内部或外部命令...」及全局变量的设置 下载与安装 一.nvm github 下载地址 ...
- Java并发编程之线程池及示例
1.Executor 线程池顶级接口.定义方法,void execute(Runnable).方法是用于处理任务的一个服务方法.调用者提供Runnable 接口的实现,线程池通过线程执行这个 Runn ...
- Flask+gevent-websocket模块实现websocket
后端代码: from flask import Flask,request from geventwebsocket.handler import WebSocketHandler from geve ...
- Python3简易接口自动化测试框架设计与实现(中)
目录 7.Excel数据读取 7.1.读取配置文件 7.1.编写Excel操作类 8.用例组装 9.用例运行结果校验 10.运行用例 11 .小结 上一篇:Python3简易接口自动化测试框架设计与实 ...