- 博客(23)
- 收藏
- 关注
原创 基本排序算法之希尔排序
希尔排序(Shell Sort)是一种排序算法,它是插入排序的一种改进版本,也称为缩小增量排序。希尔排序通过将待排序的元素分组,对每组进行插入排序,逐步减小增量,最终完成整个序列的排序。
2024-01-18 14:31:49
486
原创 基本排序算法之快速排序
快速排序(QuickSort)是一种常用的排序算法,是从冒泡算法演变而来的,该算法通过将待排序的序列分割成较小和较大的两个子序列,并递归地对子序列进行排序,最终实现整个序列的排序。
2024-01-11 11:18:11
502
原创 基本排序算法之插入排序
插入排序(Insertion Sort)是一种简单直观的排序算法。它将待排序的元素分为已排序和未排序两个部分,逐步将未排序的元素插入到已排序的部分中,直到所有元素都被插入到正确的位置,完成排序。
2024-01-08 15:46:24
509
原创 基本排序算法之选择排序
在计算机世界里,排序就是把一组杂乱的数据按照升序或者降序重新编排每个数据的位置的过程。顾名思义,选择排序就是通过挑选满足一定条件的元素放置到对应的位置来完成排序的方法。
2023-04-20 22:04:30
210
原创 基本排序算法之冒泡排序
在计算机世界里,排序就是把一组杂乱的数据按照升序或者降序重新编排每个数据的位置的过程。由于冒泡排序算法的核心是交换数据的位置,通过比较两个相邻的数据之间的大小,不断的把数值大的数据移动至数据队列的后面(升序排列),这个过程十分类似于一个泡泡从水底里慢慢往上升起来的情形,算法由此得名。
2023-04-18 14:27:42
649
原创 Linux性能分析工具Perf简单教程
Perf是基于Linux内核perf_events接口实现的性能分析工具。我们可以用它来分析一个程序的性能,找出影响程序性能的瓶颈,并在此基础上对程序性能进行改进。
2023-04-02 19:03:24
3531
原创 BLE蓝牙广播入门(二)
上一篇主要介绍一个BLE广播报文的结构以及报文头部各个部分的含义。在承接上一篇的基础上,本文将重点介绍广播报文PDU净荷的数据部分(AdvData)。
2022-09-20 12:08:21
2603
原创 CAN总线
CAN总线是由德BOSCH公司开发的,并最终成为国际标准(ISO11519),是国际上应用最广泛的现场总线之一。CAN总线是一种多主控,基于广播的串行数据通信协议,具有高性能、高可靠性、实时性等优点。
2022-02-22 14:22:57
15948
原创 UART总线
一、概述UART(Universal Asynchronous Receiver/Transmitter),即通用异步接收器/发送器,是最常用的设备间通信协议之一。它是一种串行、异步、全双工的通信协议,在嵌入式领域应用的非常广泛。二、通信协议UART是一种硬件通信协议,以可配置的速度使用异步串行通信,其工作原理是将传输数据的每个字符一位接一位地传输。异步意味着没有时钟信号来同步从发送设备进入接收端的输出位。在UART中,传输模式为数据包形式。每个数据包由起始位、数据帧、奇偶校验位和停止位
2021-09-16 16:36:49
1038
原创 SPI总线
一、SPI概述SPI(Serial Peripheral interface),即串行外设接口,最初是由摩托罗拉设计的,主要用来访问EEPROM、ADC、FLASH等外部器件。这是一种高速、全双工的同步通信总线,一般由MOSI、MISO、SS(或者CS)和SCK四根线组成。简化版的SPI协议只有3根线,升级版的还有Dual SPI、Quad SPI等,这些都不在本文的讨论范围之类。二、SPI的主要特点1. 采用主从模式(Master-Slave)的控制方式SPI协议规...
2021-06-11 14:34:11
1930
1
原创 I2C 总线
一、概述I2C总线是由Philips公司(现为NXP)开发的一种简单、双向二线制同步串行总线。它只需要两根线(时钟线SCL和数据线SDA)即可在连接于总线上的器件之间现实数据双向传输。它的标准模式传输速率为100kbit/s,快速模式传输速率为400kbit/s,快速模式+(Fast-mode Plus,即Fm+)传输速率为1Mbit/s, 高速模式传输速率为3.4Mbit/s,以及单向超快速模式传输速率为5Mbit/s。二、I2C总线特征1. 硬件上只需两根线:时钟线SCL和...
2021-06-01 15:35:56
564
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人