数组合并小程序
题目:
输入有序数组a, b, 不使用排序算法,及额外数组,按大小顺序合并a, b数组,元素不重复;
思路:
1. 如果比插入的数组大,那么往后插入,如果继续有大的,就移动位置插入;
2. 遍历完所有要插入的元素;
3. 一个函数专门用于查找可以插入的位置,对于重复的数据,查找到的未知有可能是重复的,那么要跳过;
4. 一个函数专门用于插入动作,插入方法就是先整体移动位置,然后插入;
/*
这里一个一个插入是有效率问题的,为了程序简单,没有处理,如果有一批插入元素都在范围内,可以整体插入,但是实现条件会更多。
*/
代码实现:
#include <iostream>
#include <math.h>
#include <string>using namespace std;
int data_array_a[MAX_ARRAY_SIZE]={1,2,3,0,0,0};
int data_array_b[MAX_ARRAY_SIZE]={2,5,6};void insert_element(int *array_a, int pos, int *a_length, int element)
{ int tmp = 0;int i = pos+1;int j = *a_length;for(i = 0; i<(*a_length - pos); i++){array_a[j] = array_a[j-1];j--;}(*a_length)++;array_a[pos] = element;
}int find_position(int *array_a, int end_index, int element)
{while(array_a[end_index]>element){end_index--;}return end_index;
}int main()
{int input_a_size = 3;int input_b_size = 3;int j = input_a_size -1;int i = input_b_size -1;int pos = 0;int tmp = 0;while(i>=0){if(data_array_b[i]>data_array_a[j]){insert_element(data_array_a,j+1, &input_a_size, data_array_b[i]);}else{pos = find_position(data_array_a, j,data_array_b[i]);if(data_array_a[pos] != data_array_b[i]){insert_element(data_array_a, pos,&input_a_size, data_array_b[i]); }j = pos;}i--;}while(tmp<input_a_size){cout<<data_array_a[tmp]<<endl;tmp++;}return 0;
}
相关文章:
数组合并小程序
题目: 输入有序数组a, b, 不使用排序算法,及额外数组,按大小顺序合并a, b数组,元素不重复; 思路: 1. 如果比插入的数组大,那么往后插入,如果继续有大的,就移动位置插入…...
python练习二
# Demo85def pai_xu(ls_test):#创建一个列表排序函数命名为pai_xu# 对创建的函数进行注释"""这是一个关于列表正序/倒序排列的函数:param ls_test: 需要排序的列表:return:"""ls1 [int(ls_test[i]) for i in range(len(ls_test))]#对input输入的…...
专升本-数字媒体
数字媒体 概念: 媒体:是信息的载体,传播信息的媒介,能为信息的传播提供平台 数字媒体:多重媒体,使用文字,数据,图像,声音等各种媒体 数字媒体技术:利用计…...
蓝桥杯算法题-发现环
问题描述 小明的实验室有N台电脑,编号1~N。原本这N台电脑之间有N-1条数据链接相连,恰好构成一个树形网络。在树形网络上,任意两台电脑之间有唯一的路径相连。 不过在最近一次维护网络时,管理员误操作使得某两台电脑之间增…...
Oracle存数字精度问题number、binary_double、binary_float类型
--表1 score是number(10,5)类型 create table TEST1 (score number(10,5) ); --表2 score是binary_double类型 create table TEST2 (score binary_double ); --表3 score是binary_float类型 create table TEST3 (score binary_float );实验一:分别往三张表插入 小数…...
Java封装最佳实践:打造高内聚、低耦合的优雅代码~
个人主页:秋风起,再归来~ 文章专栏:javaSE的修炼之路 个人格言:悟已往之不谏,知来者犹可追 克心守己,律己则安! 1、封装 1.1 封装的概念 面向对象程序三大…...
开源,微信小程序-超级计算器T3000 简介
笔者于四年前自学微信小程序开发,这个超级计算器T3000就是当时的练习作品。超级计算器T3000的功能有很多,其中的核心技术是矩阵计算,使用的工具库是math.js,其次是复杂运算和分式运算。关于math.js的使用,可以参考另一…...
Dimitra:基于区块链、AI 等前沿技术重塑传统农业
根据 2023 年联合国粮食及农业组织(FAO)、国际农业发展基金(IFAD)等组织联合发布的《世界粮食安全和营养状况》报告显示,目前全球约有 7.35 亿饥饿人口,远高于 2019 年的 6.13 亿,这意味着农业仍…...
降低项目延期概率的5大注意事项
降低项目延期概率对项目非常重要。因为项目延期往往会导致成本增加,降低客户满意度,影响企业在市场上的竞争力,造成资源浪费。因此,我们需要降低项目延期概率,实现企业长远发展。 而降低项目延期概率,一般来…...
在VUE页面调用Extjs中定义的方法
VUE版本:VUE2 EXTJS版本:4.2.6 1、在extjs页面上写监听事件(主要利用了window.addEventListener来监听message事件 window.addEventListener("message", function(event) {// 这里写监听到消息后的逻辑,event.data就是…...
【独立开发前线】Vol.32 能够坚持下去的人并没有你想象的那么多
如果你有一个博客,你就已经超过了80%的独立开发者; 如果你每周更新自己的博客,你就已经超过了90%的独立开发者; 如果你每天更新自己的博客,你就已经超过了99%的独立开发者; 能够坚持下去的人并没有你想象…...
Java 扫描某包下所有类的注解并获得注解值
背景 : 需求 需要获取某个包下的所有的注解 并不是全部项目的 所以 只用针对某个包 进行扫描 获取注解 数据就行 百度了一圈 spring boot 没有自带的 获取注解集合的方法 在看 php 中 hyperf 框架 看到了 这个方法 就是因为 我需求是 php 和java 合体 微服务开发 …...
根据实例逐行分析NIO到底在做什么
Selector(选择器)是 Channel 的多路复用器,它可以同时监控多个 Channel 的 IO 状况,允许单个线程来操作多个 Channel。Channel在从Buffer中获取数据。 选择器、通道、缓冲池是NIO的核心组件。 一、新建选择器 此时选择器内只包含…...
TypeScript-对象的类型(接口)
1.接口 说明:TypeScript 中的接口(Interfaces)是一种用来定义对象的结构或者契约的方式。通过接口,你可以定义对象应该具有哪些属性、方法以及它们的类型。 2.一致性 说明:接口的属性名和对象的属性名必须一致性。 …...
Windows服务器安全策略配置几个步骤,轻松加强服务器安全
Windows服务器安全策略怎么做?不要觉得这是一个非常深奥遥不可及的问题,其实也是从各个方面去加固系统的安全性而已,它没有一个定论,今天德迅云安全就跟用户们分享一下windows服务器基本安全策略保障服务器基本安全的一些简单实用…...
Hive详解(2)
Hive 表结构 分区表 多字段分区:需要使用多个字段来进行分区,那么此时字段之间会构成多层目录,前一个字段形成的目录会包含后一个字段形成的目录,从而形成多级分类的效果。例如商品的大类-小类-子类, 省市县、年…...
【浅尝C++】STL第二弹=>迭代器失效详解/vector常用接口使用示例/vector底层结构探索/vector模拟实现代码详解
🏠专栏介绍:浅尝C专栏是用于记录C语法基础、STL及内存剖析等。 🎯每日格言:每日努力一点点,技术变化看得见。 文章目录 vector介绍vector常用接口及使用示例构造类函数迭代器的使用容量操作增删改查 迭代器失效详解与v…...
【pytest】pytest` 中几种常用的参数化方法
pytest 是一个强大的 Python 测试框架,它提供了多种参数化测试的方法。参数化测试允许你使用不同的输入集来运行相同的测试逻辑,从而确保代码在各种条件下都能正常工作。以下是 pytest 中几种常用的参数化方法: 1. 使用 pytest.mark.paramet…...
设计模式-装饰者模式在Java中使用实例-打印发票装饰抬头和脚注
场景 设计模式-装饰者模式在Java中的使用示例: 设计模式-装饰者模式在Java中的使用示例_java装饰者模式例子-CSDN博客 上面装饰器的调用示例如下 AbstarctComputer computer;//要买1台电脑computer new BaseComputer();//加一个内存条computer new MemoryDecor…...
parallel linux虚拟机没有root权限
前言 今天刚在parallel上装上linux虚拟机,安装的是Debian发行版。用终端输入命令时,无意间发现当前用户竟然不是root用户,岂有此理!众所周知,Linux系统一般安装之后都是默认root用户的,但是可能parallel先…...
Unity游戏任务系统框架解析:数据驱动与事件架构实战
1. 项目概述:一个为游戏开发者准备的灵活任务系统如果你正在开发一款RPG、开放世界或者任何需要任务驱动的游戏,那么“任务系统”绝对是你绕不开的核心模块。最近我在GitHub上发现了一个名为shomykohai/quest-system的开源项目,它不是一个完整…...
Cortex-R52 MBIST与March算法在嵌入式存储测试中的应用
1. Cortex-R52 MBIST测试技术解析在嵌入式系统开发中,存储器可靠性直接影响整个系统的稳定性。作为Arm Cortex-R系列中的实时处理器,Cortex-R52集成了PMC-R52(Programmable Memory Controller)模块,专门用于执行存储器…...
ImageTrans插件生态:用Python扩展图片OCR与翻译工作流
1. 项目概述:一个为ImageTrans量身定制的插件生态如果你经常需要处理图像中的文字,比如翻译漫画、本地化游戏截图或者处理带文字的UI设计稿,那你很可能听说过或者用过ImageTrans这款工具。它是一款专注于图片文字识别(OCR…...
英雄联盟R3nzSkin换肤工具:5分钟快速上手免费皮肤解锁指南
英雄联盟R3nzSkin换肤工具:5分钟快速上手免费皮肤解锁指南 【免费下载链接】R3nzSkin-For-China-Server Skin changer for League of Legends (LOL) 项目地址: https://gitcode.com/gh_mirrors/r3/R3nzSkin-For-China-Server 还在为英雄联盟国服昂贵的皮肤价…...
告别手动传包!用Pypiserver在内网搭建Python私有源,团队协作效率翻倍
告别手动传包!用Pypiserver在内网搭建Python私有源,团队协作效率翻倍 在团队开发中,Python依赖管理常常成为效率瓶颈。想象这样的场景:新同事加入项目,需要配置开发环境,却因为内网限制无法直接访问PyPI&a…...
AI Agent配置安全扫描:AgentLint工具实战与供应链风险防护
1. 项目概述:AI Agent配置的“安全门卫”最近在折腾Claude Code和Cursor这类AI编程助手时,我发现了一个既让人兴奋又有点不安的事实:这些工具的配置文件(比如.claude/目录、CLAUDE.md或.cursorrules)功能强大到可以执行…...
大模型高效化实战:从量化剪枝到推理部署的完整指南
1. 大模型高效化:从“巨无霸”到“精悍战士”的必经之路如果你和我一样,在过去的几年里深度参与过大语言模型的部署和应用,那你一定对“模型太大”这个问题深有体会。动辄几十GB甚至上百GB的模型文件,对显存的贪婪吞噬,…...
为什么你的DeepSeek Terraform配置总在CI/CD中崩溃?5个被官方文档隐藏的state锁机制真相
更多请点击: https://intelliparadigm.com 第一章:为什么你的DeepSeek Terraform配置总在CI/CD中崩溃?5个被官方文档隐藏的state锁机制真相 DeepSeek 与 Terraform 的深度集成虽提升了 AI 基础设施编排能力,但其 state 锁行为在 …...
Cursor Pro免费升级完整指南:3分钟突破使用限制的实用教程
Cursor Pro免费升级完整指南:3分钟突破使用限制的实用教程 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reached your…...
Termius v7.0.1汉化踩坑实录:从修改entry.js到完美中文界面的完整流程
Termius v7.0.1深度汉化实战:从逆向分析到完美本地化的技术探索 Termius作为一款广受开发者喜爱的SSH客户端,其v7.0.1版本在功能和性能上都有显著提升。但对于中文用户而言,官方未提供完整的本地化支持始终是个遗憾。本文将带你深入Termius内…...
