链表数组插入排序
InsertSort
插入排序算法,比如打扑克牌的算法时,按照从左到右,找到对应的位置插入排序
最重要的是位置移动
找到对应位置值
#include "iostream"
#include "bits/stdc++.h"using namespace std;void sort(vector<int>& nums) {if(nums.size()==0) return;for(int i=1;i<nums.size();i++) {if(nums[i]<nums[i-1]) {int temp = nums[i];int j = i;while(j>0&&nums[j-1]>temp) {nums[j] = nums[j-1];j--;}nums[j] = temp;}}
}int main(int argc,char** argv) {vector<int> nums {2,3,2,12,19,23};sort(nums);for(int i:nums) {cout<<i<<" "<<endl;}return 0;
}
链表的插入排序算法:
没有灵魂的画手,SIX,SIX,SIX!

#include <string.h>
#include <iostream>
#include <bits/stdc++.h>using namespace std;struct ListNode {int val;struct ListNode *next;ListNode(int v):val(v) {}
};class Solution {
public:ListNode* insertionSortList(ListNode* head) {// 虚拟的头节点值。ListNode* dumb = new ListNode(-1);dumb->next = head;// head是最后一个已经排好序的位置// head->next是第一个待排序的位置while (head && head->next) {if (head->val > head->next->val) {// 从第一个节点的位置来进行遍历ListNode* p = dumb;while (p->next->val < head->next->val) {p = p -> next;}ListNode* cur = head->next;head->next = cur->next;cur->next = p->next;p->next = cur;}else {head = head->next;}}// 删除虚拟的头指针节点值。head = dumb->next;delete dumb;return head;}
};int main(int argc, char* argv[]) {ListNode *head = new ListNode(1);ListNode *h2 = new ListNode(4);ListNode *h3 = new ListNode(3);ListNode *h4 = new ListNode(2);ListNode *h5 = new ListNode(5);ListNode *h6 = new ListNode(2);head->next = h2;h2->next = h3;h3->next = h4;h4->next = h5;h5->next = h6;h6->next = nullptr;Solution s;ListNode *res;res = s.insertionSortList(head);while(res!=nullptr) {cout<<res->val<<" ";res= res->next;}return 0;
}
相关文章:
链表数组插入排序
InsertSort 插入排序算法,比如打扑克牌的算法时,按照从左到右,找到对应的位置插入排序 最重要的是位置移动 找到对应位置值 #include "iostream" #include "bits/stdc.h"using namespace std;void sort(vector<in…...
MyBatis的创建,简单易懂的一篇blog
文章目录 一、MyBatis是什么二、操作流程三.配置resource总结 一、MyBatis是什么 MyBatis 是⼀款优秀的持久层框架,它⽀持⾃定义 SQL、存储过程以及⾼级映射。MyBatis 去除了⼏乎所有的 JDBC 代码以及设置参数和获取结果集的⼯作。MyBatis 可以通过简单的 XML 或注…...
MOS管的静电击穿问题
MOS管输入电阻很高,为什么一遇到静电就不行了? 静电击穿:由于静电的积累导致电压超过了原本MOS的绝缘能力,导致电流突然增大的现象。 MOS管基础知识了解: G极(gate)—栅极,不用说比较好认 S极(source)—源…...
在线 SQL 模拟器SQL Fiddle使用简介
在线 SQL 模拟器SQL Fiddle使用简介 本文可作为“SQL语言与SQL在线实验工具的使用” https://blog.csdn.net/cnds123/article/details/115038700 一文的补充。 有时候,我们想去验证 SQL语句,却缺少数据库环境,那该怎么办呢? 这…...
仿京东淘宝商品列表筛选组件:实现一个高效的侧边栏弹框筛选功能
仿京东淘宝商品列表筛选组件:实现一个高效的侧边栏弹框筛选功能 一、引言 随着电子商务的快速发展,用户体验成为了竞争的关键因素。在众多的电商网站中,如京东和淘宝,商品列表筛选功能为用户提供了便捷的途径来找到心仪的商品。本…...
软件工程 - 第8章 面向对象建模 - 4 - 物理体系结构建模
构件图 构件图概述 构件图描述了软件的各种构件和它们之间的依赖关系。 构件图的作用 在构件图中,系统中的每个物理构件都使用构件符号来表示,通常,构件图看起来像是构件图标的集合,这些图标代表系统中的物理部件,…...
【智能家居】二、添加火灾检测模块(烟雾报警功能点)
可燃气体传感器 MQ-2 和 蜂鸣器 代码段 controlDevice.h(设备控制)smokeAlarm.c(烟雾报警器)buzzer.c(蜂鸣器)mainPro.c(主函数)运行结果 可燃气体传感器 MQ-2 和 蜂鸣器 代码段 …...
history和hash两种路由模式原理,和优缺点
Hash Hash 模式是在 URL 中使用井号(#)来作为路由的模式。在 Hash 模式下,即使页面刷新,浏览器仍然只会请求页面的初始 HTML 文件,所有的路由变化都会在 URL 前面添加 “#/” 符号。 原理 在 Hash 模式下,路…...
Nginx 具体应用
1 Nginx 1.1 介绍 一款轻量级的 Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。它占有的内存少,并发能力强,中国大陆使用 nginx 的网站有:百度、京东、新浪、网易、腾讯、淘宝等。第一个公开版本发布于…...
计算机网络之网络传输,三次握手和四次挥手
网络传输通过高低电压 流 基本类型数组 低电压转高电压,通过网卡 传输模式: 全双工:互相传输且能同时传输 半双工:互相传输但是不能同时传输 单工:单向传输,(键盘,显示器&#…...
Azure Machine Learning - 在 Azure AI 搜索中创建全文查询
Azure AI搜索中如果要为全文搜索生成查询,本文提供了设置请求的步骤。 本文还介绍了查询结构,并说明了字段属性和语言分析器如何影响查询结果。 关注TechLead,分享AI全维度知识。作者拥有10年互联网服务架构、AI产品研发经验、团队管理经验&a…...
基于YOLOv8深度学习的钢材表面缺陷检测系统【python源码+Pyqt5界面+数据集+训练代码】目标检测、深度学习实战
《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…...
深度学习常见回归分支算法逐步分析,各种回归之间的优缺点,适用场景,举例演示
文章目录 1、线性回归(Linear Regression)1.1 优点1.2 缺点1.3 适用场景1.4 图例说明 2、多项式回归(Polynomial Regression)2.1 优点2.2 缺点2.3 适用场景2.4 图例说明 3、决策树回归(Decision Tree Regression&#…...
Programming Contest 2023(AtCoder Beginner Contest 331)D题 Tile Pattern --- 题解
目录 D - Tile Pattern 题目大意: 思路: 代码: D - Tile Pattern D - Tile Pattern (atcoder.jp) 题目大意: 给你一个n和q,n为局部棋盘大小(n*n) 并且给出局部棋盘中黑白子位置的放置情况,q为查询次数…...
Google测试框架googletest简介与使用方法
环境准备(Ubuntu) 下载 git clone https://github.com/google/googletest.git 安装 cd googletest // 创建build目录 mkdir build cd build //编译安装 cmake .. make sudo make install 检查是否安装成功 ls /usr/local/lib// 存在以下文件则说明…...
进程的创建:fork()
引入 创建进程的方式我们已经学习了一个!在我们运行指令(或者运行我们自己写的可执行程序)的时候不就是创建了一个进程嘛?那个创建进程的方式称为指令级别的创建子进程! 那如果我们想要在代码中创建进程该怎么办呢? fork() for…...
Fabric:创建应用通道
搭建自定义网络可以参考文章: https://blog.csdn.net/yeshang_lady/article/details/134113296 1 创建通道 网络搭建完成之后,就可以开始创建通道了。Fabric V2.5.4中可以在不创建系统通道的情况下直接创建应用通道。 1.1 修改配置文件 先创建配置文…...
力扣每日一题(2023-11-30)
力扣每日一题 题目:1657. 确定两个字符串是否接近 日期:2023-11-30 用时:21 m 07 s 时间:11ms 内存:43.70MB 代码: class Solution {public boolean closeStrings(String word1, String word2) {if(word1.…...
内部类Lambda
静态内部类 /*** 静态成员是在类加载成字节码时就已经存在的,静态只能访问静态*/ public class Demo {public static void main(String[] args) {Outer.Inner.show();} }class Outer {int num1 10;static int num2 20;static class Inner {static void show() {Outer outer …...
设一棵二叉树中各结点的值互不相同,其先序遍历序列和中序遍历序列分别存于两个一维数组A[1...n]和 Bfl...n]中,试编写算法建立该二叉树的二叉链表。
题目描述:设一棵二叉树中各结点的值互不相同,其先序遍历序列和中序遍历序列分别存于两个一维数组A[1…n]和 B[1…n]中,试编写算法建立该二叉树的二叉链表。 分析: 对于一颗二叉树,知道其中序和先序序列就可以完全确定…...
突破语言壁垒:PotPlayer字幕实时翻译插件让跨语言视频观看效率提升300%
突破语言壁垒:PotPlayer字幕实时翻译插件让跨语言视频观看效率提升300% 【免费下载链接】PotPlayer_Subtitle_Translate_Baidu PotPlayer 字幕在线翻译插件 - 百度平台 项目地址: https://gitcode.com/gh_mirrors/po/PotPlayer_Subtitle_Translate_Baidu 你是…...
【C++27 constexpr革命性突破】:5大新增约束与3类不可逆性能跃迁,资深编译器工程师亲授落地实践
第一章:C27 constexpr革命性突破的底层动因与标准演进全景C27 将首次允许 constexpr 函数完整支持动态内存分配(std::allocator 与 new/delete)、虚函数调用、异常处理(try/catch)及完整 I/O 流子集,其根本…...
Symfony Monolog Bundle终极指南:如何快速搭建专业日志系统
Symfony Monolog Bundle终极指南:如何快速搭建专业日志系统 【免费下载链接】monolog-bundle Symfony Monolog Bundle 项目地址: https://gitcode.com/gh_mirrors/mo/monolog-bundle Symfony Monolog Bundle是Symfony框架中一款强大的日志管理工具࿰…...
3个核心方案:开源工具ncmdumpGUI如何让网易云音乐文件自由播放
3个核心方案:开源工具ncmdumpGUI如何让网易云音乐文件自由播放 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 当我们下载了心爱的音乐,…...
Word多级列表编号消失?别慌!用这个宏代码一劳永逸(附详细操作截图)
Word多级列表编号消失?三步根治方案与宏代码实战 写论文时目录编号突然消失?项目报告的多级列表格式莫名混乱?这种"幽灵问题"几乎困扰过每个深度使用Word的用户。传统方法往往只能临时修复,下次打开文档时问题依旧——直…...
ABAP邮件发送实战:如何在SAP中优雅地嵌入表格并添加附件(附完整代码)
ABAP邮件发送实战:如何在SAP中优雅地嵌入表格并添加附件(附完整代码) 在SAP系统的日常开发中,邮件发送功能几乎是每个ABAP开发者都会遇到的需求场景。无论是定期发送业务报表、异常数据提醒,还是系统自动通知ÿ…...
NoFences:免费开源桌面分区管理工具,告别杂乱桌面,提升工作效率50%
NoFences:免费开源桌面分区管理工具,告别杂乱桌面,提升工作效率50% 【免费下载链接】NoFences 🚧 Open Source Stardock Fences alternative 项目地址: https://gitcode.com/gh_mirrors/no/NoFences 想要告别杂乱无章的Win…...
Spring Boot项目必备:用Arthas实现MyBatis Mapper热加载的完整配置流程
Spring Boot项目必备:用Arthas实现MyBatis Mapper热加载的完整配置流程 在持续交付的微服务架构中,开发团队经常面临一个共同挑战:每次修改MyBatis的Mapper XML文件后,都需要重启服务才能验证变更效果。这种低效的反馈循环严重拖慢…...
【OpenCore Configurator】:解决黑苹果配置难题的智能化解决方案
【OpenCore Configurator】:解决黑苹果配置难题的智能化解决方案 【免费下载链接】OpenCore-Configurator A configurator for the OpenCore Bootloader 项目地址: https://gitcode.com/gh_mirrors/op/OpenCore-Configurator OpenCore Configurator作为一款针…...
10分钟掌握 Terraform AWS EKS Blueprints 的 Karpenter 集成:实现自动节点扩展与成本优化终极指南
10分钟掌握 Terraform AWS EKS Blueprints 的 Karpenter 集成:实现自动节点扩展与成本优化终极指南 【免费下载链接】terraform-aws-eks-blueprints Configure and deploy complete EKS clusters. 项目地址: https://gitcode.com/gh_mirrors/te/terraform-aws-eks…...
