数据结构与算法之绪论
数据(data)是描述客观事物且能被计算加工处理的数值、字符等符号的总称。数据元素(data element)是数据的基本单位,是数据集合中的一个个体。在计算机程序中通常作为一个整体来考虑和处理。它可以由一个或多个数据项data item组成(据此数据元素分为
数据(data)是描述客观事物且能被计算加工处理的数值、字符等符号的总称。数据元素(data element)是数据的基本单位,是数据集合中的一个个体。在计算机程序中通常作为一个整体来考虑和处理。它可以由一个或多个数据项data item组成(据此数据元素分为
优先级分组配置NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4); // 4位抢占优先级NVIC_SetPriority(HighFreq_IRQn, 0x0); // 最高优先级NVIC_SetPriority(So
#include int main { int arr[5] = {0, 1, 2, 3, 4};printf("%d\n", arr[10]); // 访问不存在的元素return 0;}
链表是一种基础且重要的数据结构,它由一系列节点(Node)组成,这些节点在内存中不必是连续存储的。每个节点包含数据域和指向下一个(或上一个)节点的指针域。链表因其动态性(可以方便地插入和删除元素而无需移动大量数据)而被广泛应用于各种编程场景。
在C语言中,指针可以指向变量的地址。多级指针(Pointers to Pointers 或 Multilevel Pointers)则是指向另一个指针地址的指针。这种概念可以扩展到任意级别(二级指针、三级指针等),但在实际应用中,二级指针最为常见,三级或更高级
C语言中有许多运算符,例如加减乘除、逻辑运算符等等。在表达式中,不同运算符的优先级不同,如果没有注意到这一点,就会产生一些错误。例如:
有的时候,我们所遇到的数据结构,不仅仅是一群数字或者是字符串那么简单。比如我们每一个人的学籍信息,学号是一个长整数,名字却是字符;甚至有更复杂的情况,这种问题在现实生活中并不少见。我们之前学过一种叫数组的数据结构,它可以允许我们把很多同类型的数据集中在一起处理
软件工程师自测,这个在我们嵌入式行业,很多大公司可能会作为一个标准的流程。但是在一些中小公司,可能会忽略这个步骤,那这就靠我们自觉了。因为进行充分的自测,受益的也是我们,免去了后面反复地被bug修复打断我们的需求开发。
// 直接赋值指针(危险操作)void shallow_copy(Student* dest, const Student* src) { dest->id = src->id; dest->name = src->name; // 共享同一内存地址}Stud
#include #include typedefstruct Node {int coeff;int exp;struct Node* next;} Node;// 插入节点并保持降序排列,合并同类项void inser
静态变量#include "error.cuh"#include __device__ int d_x = 1;__device__ int d_y[2];void __global__ my_kernel(void){d_y[0] +=
UART(Universal Asynchronous Receiver/Trasmitter),通用异步串行收发器。它可以通过电平转换器和 RS - 232 电缆或外部电路提供与外部设备的串行通信能力。外部电路可以将红外信号转换为电信号(用于接收),或将电信