C语言学习报告
文章平均质量分 63
只是自己的学习过程
六月悉茗
现就职于汽车电子行业某头部外企
展开
-
【嵌入式 - Tutorial: Makefile Projects with Eclipse】
Tutorial: Makefile Projects with Eclipse原创 2024-04-29 14:39:23 · 753 阅读 · 0 评论 -
【嵌入式 - 英飞凌 - Peak Current Control】
Peak Current Control原创 2024-04-29 14:37:40 · 707 阅读 · 0 评论 -
【通信 - CRC检查】
CRC是循环冗余校验(Cyclic Redundancy Check)的缩写。它是一种错误检测技术,通常用于检测数据传输或存储中的错误。CRC通过对数据进行多项式除法运算来生成一个校验码,发送方将这个校验码随数据一起发送给接收方,接收方再对接收到的数据进行相同的计算,并将结果与接收到的校验码进行比较,以确定数据是否在传输或存储过程中发生了错误。CRC广泛应用于计算机网络、存储设备以及数据通信等领域。原创 2024-04-15 11:38:17 · 1033 阅读 · 0 评论 -
【英飞凌DAVE - TIMER】
通过定时器,可以确保这些任务在预定的时间间隔内得以执行,提高系统的稳定性和可靠性。生成精确的时间延迟: 定时器可以用于生成精确的时间延迟,以便在程序中执行特定的操作或任务。这在需要精确时间控制的应用中很常见,比如在通信协议中等待特定时间窗口的到来。例如,在通信中,可以使用定时器来检测数据传输超时,并采取相应的错误处理措施。总的来说,定时器在嵌入式系统中起着至关重要的作用,它们提供了一种有效的方式来控制时间、调度任务和执行时间相关的操作,从而实现系统的功能和性能要求。这样的话,当时间条件满足,会触发中断。原创 2024-04-12 10:25:14 · 751 阅读 · 0 评论 -
【英飞凌 - UART - 波特率】
在进行波特率调整时,应确保所有相关设备的通信参数保持一致,以确保通信的稳定性和可靠性。当工业控制系统中的某些设备需要更换或升级时,新设备可能具有不同的通信参数,包括波特率。因此,需要根据新设备的要求修改通信波特率,以确保设备之间的通信正常进行。例如,实时性要求较高的应用可能需要较高的通信速率,而对于一些节能环保型应用,可能会采用较低的通信速率以降低功耗。如果在工业控制系统中,某些设备之间的通信距离发生变化,可能需要调整通信波特率。通常情况下,较长的通信距离需要较低的波特率,以确保信号稳定传输。原创 2024-04-12 10:23:58 · 301 阅读 · 0 评论 -
【力扣 - 矩阵置零】
给定一个m x n的矩阵,如果一个元素为0,则将其所在行和列的所有元素都设为0。请使用原地算法。原创 2024-03-28 14:18:28 · 386 阅读 · 0 评论 -
【力扣 - 螺旋矩阵】
给你一个m行n列的矩阵matrix,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。原创 2024-03-28 14:18:09 · 427 阅读 · 0 评论 -
【力扣 - 轮转数组】
给定一个整数数组nums,将数组中的元素向右轮转k个位置,其中k是非负数。原创 2024-03-25 15:07:54 · 869 阅读 · 0 评论 -
【力扣 - 除自身以外数组的乘积】
给你一个整数数组nums,返回 数组answer,其中answer[i]等于nums中除nums[i]之外其余各元素的乘积。题目数据 保证 数组nums之中任意元素的全部前缀元素和后缀的乘积都在32位 整数范围内。请 不要使用除法,且在O(n)时间复杂度内完成此题。原创 2024-03-25 15:07:03 · 233 阅读 · 0 评论 -
【力扣 - 合并区间】
以数组intervals表示若干个区间的集合,其中单个区间为。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。原创 2024-03-12 14:13:06 · 226 阅读 · 0 评论 -
【力扣 - 最大子数组和】
给你一个整数数组nums,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。是数组中的一个连续部分。原创 2024-03-12 14:04:06 · 366 阅读 · 0 评论 -
【力扣 - 和为K的子数组】
给你一个整数数组nums和一个整数k,请你统计并返回 该数组中和为k的子数组的个数。子数组是数组中元素的连续非空序列。原创 2024-03-11 13:59:42 · 414 阅读 · 0 评论 -
【力扣 - 找到字符串中所有字母异位词】
给定两个字符串s和p,找到s中所有p的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。指由相同字母重排列形成的字符串(包括相同的字符串)。原创 2024-03-11 11:27:00 · 547 阅读 · 0 评论 -
【力扣 - 无重复字符的最长字符串】
给定一个字符串s,请你找出其中不含有重复字符的 最长子串 的长度。原创 2024-03-06 15:44:56 · 393 阅读 · 0 评论 -
【力扣 - 三数之和】
给你一个整数数组nums,判断是否存在三元组满足i!= ji!= k且j!= k,同时还满足。请你返回所有和为 0 且不重复的三元组。:答案中不可以包含重复的三元组。原创 2024-03-06 14:06:06 · 469 阅读 · 0 评论 -
【力扣 - 盛最多水的容器】
给定一个长度为n的整数数组height。有n条垂线,第i条线的两个端点是(i, 0)和。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。:你不能倾斜容器。原创 2024-03-04 15:12:59 · 361 阅读 · 0 评论 -
【力扣 - 最长连续数组】
给定一个未排序的整数数组nums,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。请你设计并实现时间复杂度为O(n)的算法解决此问题。原创 2024-03-04 14:27:14 · 209 阅读 · 0 评论 -
【力扣 - 字母异位词分组】
给你一个字符串数组,请你将组合在一起。可以按任意顺序返回结果列表。是由重新排列源单词的所有字母得到的一个新单词。原创 2024-03-01 13:33:27 · 613 阅读 · 0 评论 -
【力扣 - 多数元素】
给定一个大小为n的数组nums,返回其中的多数元素。多数元素是指在数组中出现次数 大于n/2的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。原创 2024-02-29 11:44:58 · 946 阅读 · 0 评论 -
【力扣 - 只出现一次的数字】
给你一个 非空 整数数组nums,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。原创 2024-02-28 13:54:14 · 374 阅读 · 0 评论 -
【力扣 - 杨辉三角】
给定一个非负整数numRows,生成「杨辉三角」的前numRows行。原创 2024-02-28 13:41:02 · 400 阅读 · 0 评论 -
【力扣 - 爬楼梯】
假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?我们用 表示爬到第 级台阶的方案数,考虑最后一步可能跨了一级台阶,也可能跨了两级台阶,所以我们可以列出如下式子:它意味着爬到第 级台阶的方案数是爬到第 级台阶的方案数和爬到第 级台阶的方案数的和。很好理解,因为每次只能爬 1 级或 2 级,所以 只能从 和 转移过来,而这里要统计方案总数,我们就需要对这两项的贡献求和。原创 2024-02-27 10:07:20 · 579 阅读 · 0 评论 -
【力扣 - 买卖股票的最佳时机】
给定一个数组prices,它的第i个元素prices[i]表示一支给定股票第i天的价格。你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0。原创 2024-02-26 13:15:52 · 292 阅读 · 0 评论 -
【力扣 - 有效的括号】
给定一个只包括'('')''{''}''['']'的字符串 s ,判断字符串是否有效。原创 2024-02-26 11:13:33 · 409 阅读 · 0 评论 -
【力扣 - 搜索插入位置】
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。原创 2024-02-23 15:58:11 · 464 阅读 · 0 评论 -
【力扣 - 将有序数组转化为二叉搜索树】
二叉搜索树的中序遍历是升序序列,题目给定的数组是按照升序排序的有序数组,因此可以确保数组是二叉搜索树的中序遍历序列。给定二叉搜索树的中序遍历,是否可以唯一地确定二叉搜索树?答案是否定的。如果没有要求二叉搜索树的高度平衡,则任何一个数字都可以作为二叉搜索树的根节点,因此可能的二叉搜索树有多个。如果增加一个限制条件,即要求二叉搜索树的高度平衡,是否可以唯一地确定二叉搜索树?答案仍然是否定的。原创 2024-02-22 15:03:43 · 593 阅读 · 0 评论 -
【RS485 - 总线冲突】
在RS485通信中,如果在接收完数据后立即发送数据,可能会引发总线冲突问题。这是因为在RS485通信中,设备是共享同一个通信总线的,当多个设备同时尝试在总线上发送数据时,可能会导致数据冲突和干扰,从而造成通信失败。原创 2023-08-30 17:28:35 · 2670 阅读 · 1 评论 -
【力扣 - 二叉树的直径】
给你一棵二叉树的根节点,返回该树的 直径。二叉树的 直径 是指树中任意两个节点之间最长路径的 长度。这条路径可能经过也可能不经过根节点 root。两节点之间路径的 长度 由它们之间边数表示。原创 2024-02-21 15:49:58 · 471 阅读 · 0 评论 -
【力扣 - 对称二叉树】
给你一个二叉树的根节点 root , 检查它是否轴对称。原创 2024-02-20 14:24:49 · 354 阅读 · 0 评论 -
【力扣 - 翻转二叉树】
给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。原创 2024-02-20 14:11:30 · 276 阅读 · 0 评论 -
【力扣 - 二叉树的最大深度】
给定一个二叉树 root ,返回其最大深度。二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。树中节点的数量在 区间内。方法一:深度优先搜索思路与算法如果我们知道了左子树和右子树的最大深度 和 ,那么该二叉树的最大深度即为而左子树和右子树的最大深度又可以以同样的方式进行计算。因此我们可以用「深度优先搜索」的方法来计算二叉树的最大深度。具体而言,在计算当前二叉树的最大深度时,可以先递归计算出其左子树和右子树的最大深度,然后在 O(1)时间内计算出当前二叉树的最大深度。递归在访原创 2024-02-19 14:56:00 · 339 阅读 · 0 评论 -
【力扣 - 二叉树的中序遍历】
给定一个二叉树的根节点 root ,返回 它的 中序 遍历。原创 2024-02-19 14:28:45 · 869 阅读 · 0 评论 -
【力扣 - 合并两个有序链表】
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。原创 2024-02-18 13:56:40 · 279 阅读 · 0 评论 -
【力扣 - 环形链表】
给你一个链表的头节点 head ,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递。仅仅是为了标识链表的实际情况。如果链表中存在环 ,则返回 true。否则,返回 false。原创 2024-02-18 13:08:50 · 1164 阅读 · 0 评论 -
【力扣 - 回文链表】
给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true;否则,返回 false。链表中节点数目在范围[1, 100000] 内。原创 2024-02-07 14:33:36 · 1160 阅读 · 0 评论 -
【力扣 - 时间复杂度和空间复杂度】
时间复杂度和空间复杂度都是用于衡量算法性能的指标,但它们分别从不同的角度来评估算法的效率。时间复杂度时间复杂度是衡量算法执行时间随输入规模增长而变化的度量。它用大O符号(O)来表示,通常用于表示算法执行时间的上限。时间复杂度描述了随着输入规模增长,算法执行时间的增长趋势。常见的时间复杂度包括:O(1):常数时间复杂度,表示算法的执行时间与输入规模无关。O(log n):对数时间复杂度,表示算法的执行时间随输入规模的对数增长。原创 2024-02-07 10:52:29 · 1004 阅读 · 0 评论 -
【C语言 - 力扣 - 反转链表】
给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。原创 2024-02-06 11:05:42 · 710 阅读 · 0 评论 -
【C语言 - 哈希表 - 力扣 - 相交链表】
哈希表(Hash Table),也称为散列表,是一种常用的数据结构,用于实现关联数组。它通过将键(key)映射到数组(Array)的特定位置来实现快速的数据检索。哈希表的主要思想是利用哈希函数将键转换为数组索引,然后将值存储在该索引位置的数组中。原创 2024-02-05 14:09:07 · 1178 阅读 · 0 评论 -
【C语言 - 状态机 - If else】
状态机(State Machine)和条件语句(if-else)是两种不同的编程概念,用于控制程序的流程和逻辑。它们在应用场景、作用以及优劣方面有很大的区别。作用:状态机是一种用于建模和管理程序的状态和状态转换的工具。它将程序的行为分解为一组状态,以及在这些状态之间的过渡。状态机通常用于处理复杂的、有多个状态和状态转换的问题,如有限自动机、游戏开发、工作流程管理等领域。优劣:优点:状态机能够清晰地定义程序的状态和状态转换,使代码更易于理解和维护。它适用于需要跟踪多个状态的复杂逻辑。原创 2023-10-30 10:46:12 · 297 阅读 · 0 评论 -
【makefile】
makefile 是个文件,这个文件中描述了咱们程序的编译规则。咱们执行make命令的时候,make命令会在当前目录下找makefile文件,根据makefile文件里的规则,编译咱们的程序。注意:Makefile规则文件是咱们程序员根据自己的程序,编写的编译规则。原创 2023-08-17 14:26:11 · 67 阅读 · 0 评论