链表冒泡排序一是可以交换指针域的值,二是可以交换指针

typedef struct st_node{

int score;

struce st_node *next;

}Node,*LinkList;

LinkList createList(){

Node *head = (Node *)malloc(sizeof(Node));

if(NULL == head){

printf("内存分配失败!"):

return NULL;

}

head->next = NULL;

return head;

}

void sortLinklist(Linklist linklist){

// 默认当前这个链表有头节点

// 要接着排序的链表

Linklist sorted = linklist->next;

// 将原来那个链表变为空表,用来存放排序后的链表

linklist->next = NULL;

while(sorted != NULL){

Node *curr = sorted;

// 每次去排序curr就重新初始化这个prev和temp

Node *prev = linklist;

Node *temp = linklist->next;

while(temp != NULL && temp->score < curr->score){

// 原先的linklist实际是排序好的列表,一直循环到排序列表中temp的数据刚好就是插入数据的前一个

prev = temp;

temp = temp->next;

}

// 插入的新节点curr,后续指向linklist后续的节点

curr->next = temp;

prev->next = curr;

// 下次再找下一个需要排序的节点

sorted = sorted->next;

}

return;

}

为方便理解,读者可以绘制图形移动说明文本来理解算法逻辑过程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/95920.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/95920.shtml
英文地址,请注明出处:http://en.pswp.cn/web/95920.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

远场代码学习_FDTD_farfield

项目4.2 farfield3d - Script command在3D模拟中将给定的功率或场剖面监视器或直线数据集投射到远场。返回电场强度|E| 2。语法描述 out farfield3d("mname",f, na, nb, illumination, periodsa, periodsb, index, direction)&#xff1b; 将给定的功率或场分布监…

Adobe Illustrator(Ai) 2022安装教程与下载地址

Adobe Illustrator&#xff08;通常简称 AI&#xff09;是一款由 Adobe 公司开发的、基于矢量图形的专业设计软件。它与 Photoshop&#xff08;基于位图/像素&#xff09;和 InDesign&#xff08;专注于页面排版&#xff09;并称为数字创意领域的“三巨头”&#xff0c;是平面设…

小迪web自用笔记27

框架就是一些封装好的东西*上节课补&#xff1a;JS负责美化框架的&#xff08;发送HTTP请求前端&#xff0c;js相当于前端并且附加上一些连接后端的功能。&#xff09;&#xff0c;JAVA是后端。PHPthink&#xff08;用的最多的框架&#xff09;URL&#xff1a;原&#xff1a;ht…

创建阿里云ECS实例操作(免费试用版)

目录 1、进入阿里云ECS控制台 2、创建ECS实例 3、重置实例密码 4、远程登陆实例 5、查看ECS信息 6、安装apache服务 7、端口规则设置 8、访问测试 9、释放实例 1、进入阿里云ECS控制台 https://www.aliyun.com/ 2、创建ECS实例 3、重置实例密码 4、远程登陆实例 5、查…

JVM相关 4|JVM调优与常见参数(如 -Xms、-Xmx、-XX:+PrintGCDetails) 的必会知识点汇总

目录&#xff1a;&#x1f9e0; 一、JVM调优目标1. 调优核心目标2. 调优常见问题&#x1f9e9; 二、JVM调优核心参数详解1. 堆内存相关参数2. 垃圾回收器相关参数3. GC日志与性能监控4. 元空间&#xff08;Metaspace&#xff09;调优5. 栈内存调优6. 其他关键参数&#x1f4cc;…

HOT100--Day13--104. 二叉树的最大深度,226. 翻转二叉树,101. 对称二叉树

HOT100–Day13–104. 二叉树的最大深度&#xff0c;226. 翻转二叉树&#xff0c;101. 对称二叉树 每日刷题系列。今天的题目是《力扣HOT100》题单。 题目类型&#xff1a;二叉树。 关键&#xff1a;要深刻理解《递归》 104. 二叉树的最大深度 方法&#xff1a;递归 思路&…

Maven 从 0 到 1:安装、配置与依赖管理一站式指南

Maven 从 0 到 1&#xff1a;安装、配置与依赖管理一站式指南Maven 从 0 到 1&#xff1a;安装、配置与依赖管理一站式指南一、Maven 是什么&#xff1f;二、核心概念&#xff1a;POM三、Maven 是如何工作的&#xff1f;—— 仓库机制四、安装Maven五、在 IntelliJ IDEA 里配置…

k8s,v1.30.4,安装使用docker

一.前置概念Docker 与 Kubernetes 共用同一个 containerd 进程 时&#xff0c;只要满足以下 3 个条件&#xff0c;就不会冲突&#xff1a;检查点要求原因cgroup-driverkubelet 与 containerd 必须同为 systemd二者不一致会导致 Pod 无法调度Unix socketkubelet 指向 /run/conta…

开源AI智能名片链动2+1模式S2B2C商城小程序服务提升复购率和转介绍率的研究

摘要&#xff1a;本文聚焦于开源AI智能名片链动21模式S2B2C商城小程序在提升客户复购率和转介绍率方面的作用。服务对于促进客户复购和转介绍的重要性不言而喻&#xff0c;维护老客户的成本远低于开发新客户&#xff0c;微商通过推出各项服务来赢得客户忠诚。本文深入探讨开源A…

[数据结构] ArrayList(顺序表)与LinkedList(链表)

目录 1.List 1.1 什么是List 1.2 常用的方法 1.3 List的使用 2. 线性表 3. ArrayList 类(顺序表) 3.1 顺序表定义 3.2 ArrayList链表的功能模拟实现 3.3 ArrayList简介 3.4 ArrayList的构造方法 3.5 ArrayList的遍历 3.5 ArrayList的具体使用实例 3.5.1 杨辉三角 …

Hive使用Tez引擎出现OOM的解决方法

环境是Hive以Tez作为引擎&#xff0c;然后使用客户端&#xff08;比如DataGrip&#xff09;连接Hive运行SQL查询&#xff0c;运行过程中报错信息如下&#xff1a;java.lang.OutOfMemoryError: Java heap space…连接工具以DataGrip为例&#xff0c;解决办法如下&#xff1a; --…

SQL面试题及详细答案150道(81-100) --- 子查询篇

《前后端面试题》专栏集合了前后端各个知识模块的面试题,包括html,javascript,css,vue,react,java,Openlayers,leaflet,cesium,mapboxGL,threejs,nodejs,mangoDB,MySQL,Linux… 。 前后端面试题-专栏总目录 文章目录 一、本文面试题目录 81. 什么是子查询?子查…

笔记:ubuntu安装matlab

记录一下ubuntu安装matlab的过程 一、进入桌面 虽然系统是ubuntu server&#xff0c;但是安装matlab最好还是有桌面。这里使用todesk等工具&#xff0c;进入桌面进行远程安装。 二、创建matlab账号 由于学校已经提供了matlab的账号&#xff0c;只需要用自己的学生邮箱进行注册即…

CentOS 7 编译安装 OpenSSL 3.4.2

CentOS 7默认已经安装了OpenSSL&#xff0c;不过版本比较低 openssl version结果为&#xff1a;OpenSSL 1.0.2k-fips 26 Jan 2017 已经无法满足需求 OpenSSL 源码下载链接&#xff1a;https://www.openssl-library.org/source/ 下载源码包为&#xff1a;https://github.com…

python advance -----object-oriented

alt shift 上下键&#xff0c;行代码上下移动0

具身智能的工程落地:视频-控制闭环的实践路径

引言&#xff1a;从“能算会说”到“会看能做” 具身智能真正的门槛&#xff0c;不在于把模型做得更大&#xff0c;而在于把感知—决策—执行焊成一条低时延、稳态可控的闭环工程链路&#xff1a;从相机/麦克风采集&#xff0c;到编解码与传输&#xff0c;再到边/端推理、指令…

STM32 - Embedded IDE - GCC - 如何在工程中定义一段 NoInit RAM 内存

导言如上所示&#xff0c;Keil创建一段NoInit内存同样是通过图形界面来完成&#xff0c;IRAM2的起始地址0x2000000&#xff0c;大小8bytes。NoInit的意思是程序初始化时&#xff0c;不会将内存清0初始化。如上所示&#xff0c;在MEMORY段&#xff0c;将64K的RAM内存划一块8byte…

MyBatisX代码生成插件在IDEA中的安装配置、连接数据库表生成代码快速开发示例

场景 MyBatisX插件介绍 MybatisX是一款基于IDEA的快速开发插件&#xff0c;由MyBatis-Plus团队开发维护&#xff0c;为效率而生。 它的主要功能如下&#xff1a; 支持mapper.xml和Mapper接口之间方法的互相导航跳转&#xff1b; 内置代码生成器&#xff0c;通过使用GUI的形…

单词分析与助记之数据建表(以production为例)

单词分析与助记数据建表&#xff08;以production为例&#xff09;&#xff1a; id&#xff08;流水号&#xff09;&#xff1a;词形&#xff1a;production配图1-标题&#xff1a;略配图1-地址&#xff1a;略配图2-标题&#xff1a;略配图2-地址&#xff1a;略配图3-标题&…

AI助力决策:告别生活与工作中的纠结,明析抉择引领明智选择

在日常生活与工作中&#xff0c;我们时常会面临各种纠结的决策。从选择一份新工作、创业方向&#xff0c;到决定是否要搬家、换车&#xff0c;每一个决策都可能对我们的未来产生深远影响。然而&#xff0c;面对复杂多变的信息和不确定的未来&#xff0c;如何做出明智的选择成为…