首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
leon201903091654136
获赞
89
粉丝
72
关注
3
看过 TA
63
南京理工大学
2013
嵌入式工程师
IP属地:福建
暂未填写个人简介
私信
关注
拉黑
举报
举报
确定要拉黑leon201903091654136吗?
发布(253)
评论
刷题
收藏
leon201903091654136
关注TA,不错过内容更新
关注
2021-01-10 00:16
南京理工大学 嵌入式工程师
嵌入式Linux学习方法_适合初学者设计学习计划
俗话说万事开头难,刚开始的时候,你是否根本就不知如何开始,上网查资料被一堆堆新名词搞的找不到北,去图书馆看书也是找不到方向?又是arm,又是linux,又是uboot头都大了。不知道自己究竟从哪里开始? 下面就跟着我学习设计嵌入式工程师的修炼日记吧! 简单说,从arm基础知识到裸机编程,从uCOSII到linux,从linux基础的命令到shell编程,从u-boot到文件系统,最后到现在的linux驱动程序。从简单到复杂,从基础到高级基本是按照这个来的。 第一阶段:嵌入式硬件基础以及裸机程序开发 1.知识点: (1) arm处理器基础知识,工作模式,寄存器,中断与异常,寻...
0
点赞
评论
收藏
分享
2021-01-10 00:16
已编辑
南京理工大学 嵌入式工程师
C编程玩转魔方游戏
Hello,大家好。今天和大家分享一个趣味数学的魔方问题。相信之前,你们都玩过《某者》或寒暑假作业后面的趣味填数游戏。给你一个某种大小的矩阵(一般都是奇数3x3, 5x5, 7x7...), 每个单元取自然数,简单点的会先给你填好几个数字,要求你填出剩下的空格,使每行、每列,以及两条主对角线的和都相等。 空格最大数字为25.最小为1.填上剩余空格数字,使横纵斜之和为65 小伙伴们,如果做不出来,看我如何让C语言帮我们快速获得结果。 在开始编程之前,首先了解一下破解此类数独魔方游...
0
点赞
评论
收藏
分享
2021-01-10 00:15
南京理工大学 嵌入式工程师
排序系列一: 选择排序法
Hello,大家好!应广大"鸟友"强烈要求,小编将会推出《排序系列》,给大家讲讲排序那些事。 那么今天首先给大家讲解最符合人类思维逻辑的超简单排序法☞《选择排序法》。 顾名思义,选择排序法就是"先选后排"。假定待排序数字序列均为整数,且共有NUM个,大小随机排列,存放在list[NUM]中。 首先假定list[0]为序列中最小的数字,再依次拿它与list[1:NUM-1](该表达式意为list[1]至list[NUM-1]的序列)中的每一个数字做比较,如果发现有比list[0]还小的,...
0
点赞
评论
收藏
分享
2021-01-10 00:15
已编辑
南京理工大学 嵌入式工程师
排序系列之二: 快速排序法
Hello,大家好,今天继续排序系列之二讲☞《快速排序法》!在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现来。废话不多说,直接进入算法原理。 快速排序使用分治法(Divide and conquer)策略来把一个串行(list)分为两个子串行(sub-lists)。 算法步骤: 1 从数列中挑出一个元素(一般为队尾最后一个元素),称为 “基准”(pivot...
0
点赞
评论
收藏
分享
2021-01-10 00:15
已编辑
南京理工大学 嵌入式工程师
排序系列三: 二分查找法
Hello,大家好,今天给大家继续讲解排序系列。可能有细心的"鸟友"会问,你不是讲解排序吗?怎么今天的主题是一个查找方法咧? 不错,因为考虑到在实际项目中,排序和查找经常是两个好基友,二者息息相关,相互依存。故为了大家更好的接手老板交给你的实际工作,而不至于被说成是"新兵蛋子",我觉得大家有必要和我来学学这个查找法。 言归正传,首先假定一个有序整数序列存储在数组list[MAX]中,即list[0]<list[1]l<...<list[MAX-1];我们要查找的数为num_search令 1...
0
点赞
评论
收藏
分享
2021-01-10 00:14
已编辑
南京理工大学 嵌入式工程师
排序系列之四: 冒泡排序法
Hello,大家好。今天继续给大家讲解排序系列之☞《冒泡排序算法》 冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。 算法步骤: 1)比较相邻的元素。如果第一个比第二个大,就交换他们两个。 2)对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。 3)针对所有的元素重复以上的步...
0
点赞
评论
收藏
分享
2021-01-10 00:14
南京理工大学 嵌入式工程师
嵌入式系统知识和接口技术总结
什么是嵌入式 IEEE(Institute of Electrical and Electronics Engineers,美国电气和电子工程师协会)对嵌入式系统的定义:“用于控制、监视或者辅助操作机器和设备的装置”。原文为:Devices Used to Control,Monitor or Assist the Operation of Equipment,Machinery or Plants)。嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使...
0
点赞
评论
收藏
分享
2021-01-10 00:14
南京理工大学 嵌入式工程师
爬楼梯问题
最近看到很有意思的一道题目,问的是☞有一座高度10级台阶的楼梯,从下往上走,每跨一步只能向上1级或者2级台阶。例如,每次走1级台阶,一共走10步,这是其中一种走法;或者每次垮两级台阶,一共走5步;and so on.问一共有多少种走法。 当楼梯级数很小时,凭借我们大脑弱小的计算能力,可以很快的得出答案。例如台阶数为1时,当然只有一种方法;台阶数为二时,有两种方法(11或2);台阶数为三时,有三种方法(111,12,21)。再随着台阶数的增长,我们会惊奇的发现☞天呐!我的脑子越来越不够用了?! 这时就需要我们借助人类的好朋友好伙伴~~>计算机...
0
点赞
评论
收藏
分享
2021-01-10 00:13
已编辑
南京理工大学 嵌入式工程师
Balabala函数的启动和退出机制
在linux系统中,启动一个可执行程序program,便在内核中生成一个进程process,且被内核赋予一个唯一的非负整数的进程号PID(process ID)。内核通过一个task_struct结构体(进程表项/进程控制块)维护和记录该进程的所有信息,例如进程状态state,优先级priority,终端信息tty_struct,目录信息fs_struct,文件信息files_struct,内存映射mm_struct,信号信息signal_struct等。 言归正传。当一个程序执行前,即运行main函数前,内核会先行启动一个特殊的例程☞启动例程。对了,它的作用有三...
0
点赞
评论
收藏
分享
2021-01-10 00:13
已编辑
南京理工大学 嵌入式工程师
爬楼梯问题之二
正如前文所说,我们把爬上N个台阶共有有多少种方法这一问题通过递归的方法得以了解决,但问题虽然解决了可我们想过这个程序的时空复杂度没有? 首先,时间复杂度。它的时间复杂度是O(2^n),随着楼梯台阶数的增长程序的运行时间呈指数增长。这是一种我们最不想看到的情况。再次,空间复杂度。由于采取函数的嵌套调用,程序运行所需空间也是相当大的。最后,那到底有没有更好的优化方法呢? 答案是肯定的!如果大家把该问题从顶而下的展开来,应该能发现它的所有求解函数F(X),X€{N,N-1,...,1}展开式是以完全二叉树的形式组织起来的,且相邻节点的左右子树的值相...
0
点赞
评论
收藏
分享
2021-01-10 00:13
已编辑
南京理工大学 嵌入式工程师
函数运行时的内存分配
按照内存地址高→低的顺序,函数运行时内核分别为其分配了全局区,常量区,堆,栈,代码区。下面分别讲解☞) 1/全局区0x42......(全局变量,静态变量,局部静态变量,全局静态变量,它们在进入主函数前就已经被初始化,且全局变量可以通过extern声明被跨文件调用)。 a☞局部静态变量退出函数后再次进入时,不再继续初始化,而是继续沿用上次退出时的值。 b☞全局变量的定义最好放在函数的最上方,它的作用范围是定义处至函数结尾;若它不是定义在最上方,也可以通过extern声明将其作用范围拓展至声明处! c☞全局静态变量,即在定义全局变量时在前面加上...
0
点赞
评论
收藏
分享
2021-01-10 00:12
南京理工大学 嵌入式工程师
链表的实用操作函数
单向链表的操作 /*链表节点声明*/ typedef struct listnode *listpointer; struct listnode { int date; // element else listpointer link; }listnode; 1/ 反转 invert listpointer invert ( listpointer lead) { /* invert the list pointed to by Lead * / listPointer middle, trail; middle = NULL; white ...
0
点赞
评论
收藏
分享
2021-01-10 00:12
已编辑
南京理工大学 嵌入式工程师
等价类算法之链表法
☞问题描述:通过自定义输入n对偶对(偶对中的两个元素同属于一类),通过等价类算法编程,求出共有哪几种类并分别打印它们。 ☞求解步骤: 思考1.何为等价类? 定义在集合S上的关系'≡'称为 集合S上的等价关系,当且仅当它在 S上是自反的reflexive(x=x)、对称的symmetric(x=y☞y=x)、传递的transitive(x=y&&y=z☞z=x)。 思考2.构思数据结构 我们考虑采用链式结构表示。对本应用而言,结点结构中只需一个数据域和一个链域。为了结合随机访问第 i类的优点,用n个单元的数组 seq[n]存放各类头结...
0
点赞
评论
收藏
分享
2021-01-10 00:11
南京理工大学 嵌入式工程师
排序系列五----插入排序法
1.定义 将无序序列中的各元素依次插入到已经有序的线性表中。 2.分析 在线性表中,只包含第一个元素的子表显然是有序表。接下来从线性表的第二个元素开始直到最后一个元素,逐次将其中的每一个元素插入到前面的有序表中。一般来说,假设线性表中前j–1个元素已经有序,现在要将线性表中第j个元素插入到前面的有序子表中,插入过程如下: 首先将第j个元素放到一个变量temp中,然后从有序子表的最后一个元素开始,往前逐个与temp比较,将大于temp的元素依次向后移动一个位置,直到遇到小于它的元素,此时就将temp插入到刚移出的空位置上。若temp的值大于等于子...
0
点赞
评论
收藏
分享
2021-01-10 00:11
已编辑
南京理工大学 嵌入式工程师
排序系列之六:快速排序法进阶
Hello,大家好,今天继续排序系列之六讲☞《快速排序法进阶》,之所以称为进阶,那肯定是因为比vision 1.0高明。为了方便大家比较,首先同大家一起回顾一下第一版快速排序的原理。 首先拿序列的最后一项作为基准,其余项依次和他做比较,凡是比他小的都通过交换函数swap()依次和list[0],list[1]...进行交换,最后基准项自己和最后一个比他小的项的后面一项交换位置。所以经过这一轮循环,最终比基准项小的都被放在了序列的最前面,比基准项大的都被放在了序列的后面。这样原序列就以基准项为界被分为两个小序列。然后对每个小序列做同样处理,直至最小的序列仅含一个元素...
0
点赞
评论
收藏
分享
1
2
3
4
5
6
17
创作者周榜
更多
关注他的用户也关注了:
牛客网
牛客企业服务