自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Lin的博客

努力努力再努力

  • 博客(9)
  • 资源 (1)
  • 收藏
  • 关注

原创 数据结构与算法系列17--二叉树

什么是二叉树?二叉树是每个结点最多有两个子树的树结构,它是最常见的一种树结构。一些基本概念根节点:树的最顶端是节点,如图中的1节点父节点:图中1就是2和3的父节点子节点:相对的,2和3就是子节点兄弟节点:在同一父节点下,像2和3就是兄弟节点叶子节点:没有子节点的节点,像8,9节点的高度:节点到叶子节点的最长路径节点的深度:根节点到这个节点所经历的边的个数节点的层数:节点的深度...

2018-11-28 23:44:27 606

原创 数据结构与算法系列16--哈希算法

什么的哈希算法?将任意长度的二进制值串映射为固定长度的二进制值串,这个映射的规则就是哈希算法。而通过原始数据映射后得到的二进制值串就是哈希值。一个优秀的哈希算法应该满足哪几点?从原始数据计算得到的哈希值,不能反向推导出原始数据的值。对输入的数据非常敏感,只要对原始数据做一点改变,小到一个Bit的改变,最后得到的哈希值都大不相同。散列冲突的概率要很小,对于不同的数据,哈希出来的哈希值相同...

2018-11-17 21:46:28 408

原创 数据结构与算法系列15(下)--散列表(哈希表)

WWW

2018-11-13 23:32:37 160

原创 数据结构与算法系列15(中)--散列表(哈希表)

如何设计一个散列函数?1.散列函数的设计不能太复杂,否则会消耗很多计算时间,也就影响了散列表的性能。2.散列函数生成的值要尽可能的随机并且均匀分布,这样才能最小化散列冲突,即便发生冲突,散列到每个槽里的数据也会比较平均,不会出现某个槽里数据太多的情况。装载因子的选择上一节我们讲过,装载因子越大,说明散列表中的元素越多,空闲位置越小,散列冲突的概率就越大。那我们怎样解决这个问题呢?可以通过设...

2018-11-12 21:52:23 286

原创 数据结构与算法系列15(上)--散列表(哈希表)

什么是散列表散列表的英文是“Hash Table”,也叫“哈希表”或者“Hash 表”。他是一种根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。散列表的思想散列表用的是数组支持按照下标进行随机访问的时候,时间复杂度是O(1)的特性。所以散列表其实是数组的一...

2018-11-11 23:57:50 204

原创 数据结构与算法系列14-跳表

什么是跳表?点对点一、什么是跳表?为一个值有序的链表建立多级索引,比如每2个节点提取一个节点到上一级,我们把抽出来的那一级叫做索引或索引层。如下图所示,其中down表示down指针,指向下一级节点。以此类推,对于节点数为n的链表,大约可以建立log2n-1级索引。像这种为链表建立多级索引的数据结构就称为跳表。二、跳表的时间复杂度?1.计算跳表的高度如果链表有n个节点,每2个节点抽取抽出...

2018-11-11 13:26:44 180

原创 数据结构与算法系列13--二分查找

什么是二分查找?二分查找算法是一种针对有序集合的查找算法,也叫折半查找。实现原理每次都通过跟区间的中间元素对比,将待查找的区间缩小为之前的一半,直到找到要查找的元素,或者区间被缩小为0。(特别注意前提是针对有序的数据集合)时间复杂度二分查找是一种非常高效的查找算法,他的时间复杂度是O(logn),我们可以假设数据大小是n,每次查找后数据都会缩小为原来的一半,也就是会除以2。最坏情况下,...

2018-11-08 22:59:37 384

原创 数据结构与算法系列12--排序优化

如何选择合适的排序算法?**这里有前面讲过的各种算法是时间复杂度的对比图,大家可以看看下。如果我们要选择一个通用的排序算法,前面讲到的线性排序算法显然是不合适的,因为它的适用场景非常有限,尽管他是速度最快的。如果对于小规模数据可以选择时间复杂度O(n^2的算法),但是对于大规模数据,则应该选择时间复杂度为O(nlogn)的算法更加高效。所以为了兼容任意规模的数据的排序,我们一般选择时间复杂...

2018-11-06 20:42:23 193

原创 数据结构与算法系列11--桶排序、计数排序、基数排序

线性排序算法介绍1.线性排序算法包括桶排序、计数排序、基数排序2.线性排序的算法的时间复杂度为:O(n)3.此三种排序算法都不涉及元素之间的比较操作,是非基于比较的排序算法。4.对要排序的数据要求很苛刻,只能适用在某些特殊场景,所以重点掌握此3钟算法的适用场景。桶排序算法原理:将要排序的数据分到几个有序的桶里,每个桶里再单独进行快速排序。桶内排完序后,再把桶内的数据按照顺序依次取出组...

2018-11-04 21:27:12 169

多功能医疗健康手表

本作品设计了一种可以同时检测心率和体温,并可以实现计步功能的手表,该装置包括单片机控制器、MLX90614红外测温模块、MMA7455计步模块、系统实时时钟、Pulse Sensor心率模块、OLED12864显示模块、nRF24L01无线通信模块和计算机控制软件、电源九部分。利用MLX90614红外测温模块及Pulse Sensor心率模块采集到人的实时体温和心率数据,通过nRF24L01无线通信模块将采集到的数据发送到单片机控制器,经过STC89LE5A60S2微控制器进行数据处理,再将数据传到OLED12864显示,并通过数据线串口发送数据到电脑,然后通过LabVIEW软件对采集到的数据进一步的处理和分析。同时本作品还可以将计步模块的数据通过STC89LE5A60S2单片机送到OLED12864显示,实现计步功能

2017-08-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除