学到牛牛官网帐号

专注IT就业培训

  • 博客(44)
  • 收藏
  • 关注

原创 关于单向链表

1、单链表单链表是一种链式存取的数据结构,用一组地址任意的储存单元存放线性表中的数据元素。链表中的数据是以结点来表示的,每个节点的构成:元素(数据元素的映像)+指针(指示后继元素存储位置),元素就是存储数据的数据单元,指针就是连接每个结点的地址数据。2、单链表的数据结构head为头结点,不存放任何数据,它的作用是充当一个指向链表中真正存放数据的第一个节点其中DATA为数据域,该内存存放的是数据;NEXT是地址域,数据类型为指针,该内存存放的是下一段内存的内存地址。3、有头链表有

2022-05-23 11:49:35 392

原创 详解常用的几种总线

1、SPI(Serial Peripheral Interface):串行外设接口。SPI总线由三条信号线组成:串行时钟(SCLK),串行数据输入(SDO),串行数据输出(SDI)。SPI总线可以实现多个SPI设备互相连接。提供SPI串行时钟的SPI设备为SPI主机或主设备(Master),其它设备为SPI从机或从设备(Slave)。主设备间可以实现全双工通信(同时接收和发送数据),当有多个从设备时还可以增加一条从设备选择线。2、I2C(INTER IC BUS):集成电路总线。I2C总线是双向、

2022-05-20 09:14:13 615

原创 图解经典排序算法系列:计数排序

我们之前文章里面讲到的排序基本上都是比较排序,不管是冒泡排序、快速排序还是插入排序等等,都是基于元素之间的比较来进行一个整体的排序,那有没有一种排序是可以不用进行元素间的对比就可以完成整个序列的升序或者降序呢?当然有,计数排序就不用元素之间的相互比较,而是通过元素的下标来确定每个元素的位置从而进行排序,在某些特殊的时候,它的排序速度甚至比快速排序还要快。举个例子,现在有一组待排序的数字(如图1-1所示),怎么通过计数排序进行升序排序呢?图1-1首先,通过观察我们会发现数组里的元素的取值范围为0

2022-05-19 10:04:08 198

原创 PyQT5环境搭建与入门操作(超详细图解安装)

1、pip工具pip是Python的安装插件的工具,由它安装后的插件有两种情况。即安装全局插件和局部插件。pip是python中自带的安装命令,它可以在线安装pyhton环境所需要的插件。pip安装插件有两种方式,第一种在Pycharm编辑工具的终端中安装,这种安装方式属性局部用户安装(即局部安装),它只在当前项目中有效。第二种在CMD终端中安装,它属于全局用户安装(即全局安装),经它安装后的插件可以在任何项目中使用。该方式安装好后会在Python的安装目录中Lib-->site-packag

2022-05-18 14:21:01 1339

原创 C++单列模式

单例模式是一种最为常见的软件设计模式。单例模式要求:单例对象所在的类必须保证只能创建一个对象。单例模式在我们日常生活和软件开发中的应用比比皆是,比如:windows系统只有一个任务管理器,一个市只有一个市长。如何保证一个类最多只能创建一个对象呢?这个问题不能交由使用者去做处理,比如用全局变量。而应该由这个类的创建者在实现该类的时候考虑问题的解决。单例模式巧妙的使用C++成员权限,将构造函数和拷贝构造函数隐藏起来(private),从而有效限定使用中对对象的自由创建。然后开放一个(static)接口,通过

2022-05-17 09:06:07 328

原创 QT属性系统

得益于Qt反射机制,我们可以获取类对象的成员信息,这其中就包含了属性信息,属性其实就是类中的一种数据成员,不同在于属性需要通过宏定义Q_PROPERTY进行注册,它的使用也必须满足反射机制的条件——类须直接或间接继承QObject且包含Q_OBJECT宏,这样就可以通过元对象的属性类(QMetaProperty)来获取属性相关信息,下面是QMetaProperty的一些常用接口说明:bool hasNotifySignal() const //属性是否有关联信号bool isConstant()

2022-05-16 10:42:02 241

原创 Window平台Qt软件打包发布方法

Qt开发生成的工程,通过动态编译之后生成对应的可执行文件,如果直接执行该可执行文件则会报错:原因是:Qt动态编译生成的可执行文件依赖非常多的dll文件,并且这些dll文件可能分布在不同文件目录,且这些目录大概率是没有添加在window系统的环境变量。如果我们需要将该执行文件部署到纯洁的操作系统环境(环境中并无Qt开发环境),那么这些动态库更无从找到。此时,我们需要将可执行文件以及依赖的dll文件一同打包发布。在window平台,Qt软件的打包发布使用windeployqt工具进行。具体的打

2022-05-05 09:16:59 1752

原创 归并排序(Merge Sort)图解,归并排序算法

归并排序是建立在归并操作上的一种有效、稳定的排序算法,该算法采用非常经典的分治法(分治法可以通俗的解释为:把一片领土分解,分解为若干块小部分,然后一块块地占领征服,被分解的可以是不同的政治派别或是其他什么,然后让他们彼此异化),归并排序的思路很简单,速度呢,也仅此于快速排序,接下来我们详细的看看归并排序的过程。基本思路:第一步:将序列中待排序数字分为若干组,每个数字分为一组。第二步:将若干组两两合并,保证合并的组都是有序的。第三步:重复第二步的操作,直到剩下最后一组即为有序数列。详细步骤:首先将数组

2022-03-24 14:15:32 8061 3

原创 数据结构分块查找的实现(图解代码篇)

分块查找又称索引顺序查找,是顺序查找和二分查找的一种改进方法。分块查找要求把一个数据分成若干块,每一块里面的元素可以是无序的,但对于一个递增的数组来说,第i块的最大元素一定要小于第i+1块的所有元素,分块查找还需要一个索引表,用来限定每一块的范围,在增加、删除、查找元素时都需要用到。分块1分块2分块3首先,我们看到的索引表是10、20、30,假如现在需要查找的目标值是12,通过二分查找索引表我们可以确定12是在分块2中然后在分块2中顺序查找,最后得到12存在...

2022-03-17 16:30:08 3619

原创 Linux文件和目录的属性及权限总结

1、权限在Linux中一切设备皆文件,而所有文件都是有权限的,查看文件权限等详细信息可以使用ls -l命令。示例如下:查看/tmp目录下所有文件/文件夹的详细信息。[root@localhost tmp]# ls -l <==查看当前目录下所有文件的详细信息总用量 12 -rw-r--r--. 1 root root 0 12月 24 19:57 2-rw-r--r--. 1 root root 1...

2022-03-15 10:03:12 275

原创 Linux文件与目录管理,源码详解

在Linux系统下,一切皆文件,文件主要分为五类:普通文件、目录文件、设备文件、链接文件、管道文件。普通文件:是最基本的文件,保存着运行指令和各种数据。普通文件是以ASCII码形式存储,人类能够读懂可以编辑修改的文件。目录文件:是文件信息的集合,实际上就是我们通常认识的“目录”。设备文件:是对计算机硬件的抽象化,例如,硬盘、鼠标、键盘被作为一个设备文件管理。链接文件:是指向另一个文件的链接,它本身没有数据,内部的数据来自其他文件。链接文件区分为硬链接与软件,两者均用于同步数据。管道文件:

2022-03-14 11:15:59 1379

原创 插值查找算法 原理与实现

在前面我们了解了二分查找,就是把一个集合的元素一分为二,用中间值和目标查找值相比较,直到要查找的值和中间值相等,则表示查找成功,反之表示不成功。为什么这里会再次提到二分查找呢?事实上,插值查找是二分查找的升级版。用一个很简单的例子就可以把插值查找解释的很清楚。在字典里面找”boy”这个单词时,我们肯定不会从第一页开始找,而是从首字母为b的位置开始查找,然后再找到第二个字母在字母表中的位置,找到对应的位置后,重复这个过程,这样就可以快速的找到目标单词。接下来就介绍一下插值查找吧。我们知道的的二分查找有一

2022-03-11 14:49:06 206

原创 动态库加载函数dlsym 在C/C++编程中的使用

dlsym函数的功能就是可以从共享库(动态库)中获取符号(全局变量与函数符号)地址,通常用于获取函数符号地址,这样可用于对共享库中函数的包装;下面是函数原型及需要包含的头文件。#include <dlfcn.h>void *dlsym(void *handle, const char *symbol);其中handle可以是dlopen函数返回的handle值,也可以是RTLD_DEFAULT或RTLD_NEXTRTLD_DEFAULT表示按默认的顺序搜索共享库中符号symbo

2022-03-10 14:57:58 10391 1

原创 希尔排序图解,非常好理解

希尔排序是一种特殊的插入排序,是对直接插入排序的升级改进。所以在学习希尔排序之前,一定要先弄清楚直接插入排序算法。基本思路:设一个序列里有n个待排序的元素,将间隔相同距离的元素分为一组进行比较,这里的间隔称之为增量,增量(gap)通常为n/2(奇数偶数都可以),随着算法的进行增量慢慢缩小,直到相邻的元素比较完,结束排序。详细步骤:首先,列出一组待排序的元素组成一个数组(如图1-1所示),数组长度len为8,增量gap可为4,2,1(每结束一轮排序,增量减半),首先增量为4时,将间隔相同距离的

2022-03-10 14:28:02 3246

原创 Linux下gdb调试工具的使用,linux下如何使用gdb调试

大多数程序员所使用的IDE(集成开发环境)都是自带调试功能的,调试功能有什么用呢?大家编译程序时发现的问题是语法或链接问题,能编译通过只能说明我们的程序在语法和链接时未产生错误,但不能说明我们程序就是完全正确的,因为程序的业务逻辑问题是在执行时才会发现的,所以我们会发现有很多初学编程的朋友就总会说明明我程序编译通过啦,为什么执行不出来结果或在执行时发生了错误呢,这就是为什么要有调试这一环节,调试的目的就在于发现程序中的业务逻辑问题,一般使用IDE的可以直接使用自带的调试工具进行程序运行调试,那如果我...

2022-01-12 09:04:29 582

原创 Linux内核IO内存使用分析思路

在嵌入式开发中,所有芯片对外设进行处理都是通过读写设备上的寄存器进行的。外设的寄存器在内存中单独分出一部分作为特殊功能寄存器进行编址。在低级嵌入式设备中,我们通过直接操作外设寄存器即可控制外设的工作。在高级设备中,设备加载了操作系统,操作系统中的内存管理单元(MMU)对设备内存进行重新管理,从而无法直接进行操作。目前市面上,根据不同CPU体系架构,CPU对外设端口的编址方式一般有两种:IO映射方式(IO mapped)和内存映射方式(memory mapped)。IO映射方式,主要指外设地址空间和内存地

2022-01-11 11:22:03 398

原创 C语言常用关键字详解(带源码)

在c语言里面所谓的关键字,就是在我们编写代码时,颜色不一样的字。而这些关键字,我们可以大致将其分为几类:存储类型、数据类型、控制语句、其他关键字。其中,存储类型包括:auto、static、register、extern。数据类型包括:int、short、long、char、float、double、signed、unsigned、struct、enum、union、void。控制语句包括:if、else、switch、case、default、break、for、while、do、goto、c

2022-01-06 09:49:22 527

原创 十大经典排序算法之——插入排序

插入排序是一种比较简单直观的排序,算是新手入门级排序,逻辑也容易理解。

2022-01-06 09:35:06 817

原创 源码解析C#中PriorityQueue(优先级队列)的实现

前言前段时间看到有大佬对.net 6.0新出的PriorityQueue(优先级队列)数据结构做了解析,但是没有源码分析,所以本着探究源码的心态,看了看并分享出来。它不像普通队列先进先出(FIFO),而是根据优先级出队。ps:读者多注意代码的注释。D叉树的认识(d-ary heap)首先我们在表示一个堆(大顶堆或小顶堆)的时候,实际上是通过一个一维数组来维护一个二叉树(d=2,d表示每个父节点最多有几个子节点),首先看下图的二叉树,数字代表索引:任意一个节点的父节点的索引为:(inde

2021-12-30 15:29:23 1146 2

原创 什么是UI?就业前景如何?

UI 即User Interface(用户界面)的简称。泛指用户的操作界面,包含移动APP,网页,智能穿戴设备等。也就是说你无时不刻的都在使用UI设计师设计的东西。例如你的手机,智能手表以及里面大量的APP应用。苹果手机的祖师爷乔布斯可以说在这上面是有很大的贡献了,他是人机交互最厉害的专家之一,如果没有乔布斯,那么现在我们可能都还在使用着老年机。所谓的“人机交互”,其实也就是对软件的人机交互。现在智能手机中常使用的滑屏解锁、双手触控、界面等,其实都属于UI的设计范畴。而在数码产品不断更新换代

2021-12-30 13:35:40 4071

原创 物联网历史发展二三事

物联网的概念是在1999年提出的,物联网的英文名叫 Internet of Things(IOT)。物联网即“万物相连的互联网”,是互联网基础上的延伸和扩展的网络,将各种信息传感设备与网络结合起来而形成的一个巨大网络,实现任何时间、任何地点,人、机、物的互联互通。2005年,在突尼斯举行的信息社会世界峰会上,国际电信联盟发布了《ITU互联网报告2005:物联网》,正式提出了“物联网”的概念。那么,我们来详细看看物联网在中国的发展是如何一步一步壮大的:1.2010—2011年,小米、乐视纷纷发..

2021-12-30 11:15:54 9545

原创 十大排序算法之——选择排序

选择排序是一种比较简单直观的排序,在十大排序中也算是比较容易理解的排序。很多同学在学习排序的过程中经常分不清楚冒泡排序和选择排序的区别,那么我们这一次就简单的看一看选择排序的一个思路过程(结尾附完整代码)选择排序简单一点说就是一个数组要经历N次遍历,因为我们想要呈现一个升序的数组,所以每次遍历都要找到数组里面最小的一个数并且把他放到数组的最前面。首先,随机定义一个数组,从第一个数开始进行第一次的遍历,这个时候,数组的第一个数默认为最小数(minidx = idx),并且拿它同数组剩下的数进行比较,如

2021-12-29 09:53:05 521

原创 C++模拟实现Qt的信号与槽机制

对于大多学习Qt的朋友,心中都有种好奇——那就是Qt最核心的信号与槽是如何实现的,对于小编自己也是一样,当然大家肯定都会去查阅相关资料,但大部分时候也只是一知半解,如果说要自己实现就会又摸不着头脑了;所以小编决定自己亲自用C++实现一个简单版的信号槽,来理解Qt的实现原理。于是小编就在翻阅各牛人朋友的博客和反复研究Qt源码自己重新写了一下以便交流学习。我们先还是简单的梳理一下Qt信号与槽的实现机理:在Qt中实现信号与槽最重要的就是通过元对象系统(MOS)的元对象编译器(MOC)将我们定义的需要使用到信号

2021-12-29 09:47:46 583

原创 聊一聊编程中的函数,编程语言中的函数是什么

函数是一段可以重复使用的代码,用来独立的完成某个功能。它可以根据用户传递的数据实现相应的功能,就像超市里面的自动收银机器,当顾客的商品条码被录入时,自动收银机器就会根据顾客购买的商品数量和单价计算出总价格,但是当没有商品信息录入时,它就不会去计算商品总价。当然函数也可以不去接收客户传输的数据,但接收用户数据的函数需要在定义时就指明参数,不接收用户数据的函数就不需要定义了,根据这一点就可以将函数分为有参函数和无参函数。有参函数的定义Datatype functionname(datatype1,da

2021-12-24 09:24:33 3474

原创 Linux带头双向循环链表,linux内核循环,内核链表分析

上节我们对Linux内核链表的设计原理进行分析,理解了内核链表的设计的优点,并解决内核链表访问问题。linux内核链表之HashList内核链表之HashList哈希链表(HashList/hlist)的设计初衷是为了方便快捷的查找,为了降低Hash表中键的冲突,一般设计会将Hash桶的数量设计的比较大。Linux链表设计者认为常规的双指针头结点的双向循环链表设计对于大数量桶的Hash表过于浪费,从而设计一套适合于Hash表的只有单指针的表头。该表头只有指向首节点的指针,没有指向尾节点指针,从而在海量H

2021-12-23 09:17:12 797

原创 物联网学习入门:C/C++函数指针与特殊指针

函数指针:存放函数首地址的变量函数与数组类似,函数名代表函数首地址,且存放函数地址的指针为函数指针。如下:void prin(){ printf(“hello\n”);}int main(){ void (*fp)() = prin; // fp为变量名,其余为数据类型 fp(); // 调用自定义函数prin,输出一次hello}上述代码中,fp为指针名,void ( * )() 为数据类型。除此之外,函数指针还可以作为参数写入函数的参数列

2021-12-22 09:51:28 2967

原创 如何在linux中学习Linux:Linux文本编辑器

Linux中文本编辑器有很多,例如gedit、kwrite、OpenOffice、vi和vim等,但是文本模式下的编辑器只有vi和vime两种,其它都属于图形模式的编辑器。vi是Linux操作系统中最经典的文本编辑器,它是最基本的文本编辑工具,它只能编辑字符,不支持对字体、段落进行排版。虽然vi的操作方式与其他常用的文本编辑器不相同,但是由于其运行字符界面,并可以用于所有Linux环境中,故被经常使用。vim是从vi发展出来的升级版文本编辑器,它除了拥有vi文本编辑器的功能外(即vim操作方式与vi

2021-12-21 14:59:05 300

原创 物联网入门学什么?物联网工程技术课程专业学哪些一览

物联网作为近年来的新兴产业之一,是就业的热门专业,但同时,也是企业最为缺乏的人才。不少同专业的应届生、跨专业的应届生以及转行的人士都会不约而同地把目光转向物联网。那么对于零基础来学物联网的人来说,物联网入门应该学什么呢?今天就跟着小编一起来了解一下吧!物联网人才一直属于稀缺状态,为什么呢?其原因如下:一、企业找不到成熟人才自物联网设立专业以来,各大高校纷纷紧跟潮流,发展到现在,不仅是本科设有专业,专科甚至中专都有该专业。其他的不论,本科院校的物联网专业在毕业时绝大多数无法达到企业用人的标准...

2021-12-08 15:29:57 7331

原创 物联网是学什么的?

近年来,物联网被作为战略性新兴产业大力发展,就连各大高校也是纷纷设立物联网专业来响应国家号召。华为鸿蒙系统面世后,物联网专业的热点也在不断攀升。可以说,物联网专业近年发展得可以说是一片火热,那么,如此热门的物联网专业到底需要学些什么内容呢?今天,就跟着小编一起来拓展一下吧!物联网在面世之初,它的定位就是多学科交叉的专业。何为交叉学科?虽说定义不明,但我们知道其相对的是单一性学科,比如说临床医学、师范、人力资源、法学等,课程类型单一,就业去向固定,所学的内容和具体的岗位关系密切,这就是单一性学科。那么

2021-12-07 16:26:56 2368

原创 物联网入门基础知识:物联网培训总结之物联网技术学习路线图

物联网,是物物可连的网络,是基于通信感知技术的互联网创新应用。是指通过射频识别(RFID)、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议,把任何物品与互联网连接起来,进行信息交换和通信,以实现智能化识别、定位、跟踪、监控和管理的一个巨大网络。追溯物联网的历史,要从特洛伊咖啡壶开始,历经无线射频RFID→智能穿戴设备和智能家居→能设备进入大规模应用等发展历程,可将物联网按云、管、端模型三个层次划分:感知层:信息收集和信号处理网络层:终端接入和数据传输平台层:负责设.

2021-12-07 11:00:55 6124

原创 从零学物联网技术:如何使用Axure动态面板?Axure动态面板详解

动态面板简介动态面板(如图1-1所示)是Axure原型制作中使用非常频繁的一个元件,它主要用于实现动态的交互效果,它由一个或多个状态组成,每个状态就是一个页面,可以通过事件来控制动态面板的状态。加群830858279免费领物联网学习资料包通过以下案例讲解动态面板的使用:1、动态面板的切换动态面板支持在同一个区域内放置多个状态的内容,每个状态的内容就如一个页面,可以使用点击事件切换不同的状态,如图2-1所示,当点击“红”按钮时,动态面板将切换到红的状态,当点击“黄”按钮时,动态面板

2021-12-07 09:48:29 779

原创 从零学物联网技术:较大影响了我们生活的物联网技术应用有哪些?

  讨论这个话题之前,我们得明白物联网的概念,即通过信息传感设备,按约定的协议,将任何物体与网络相连接,物体通过信息传播媒介进行信息交换和通信,以实现智能化识别、定位、跟踪、监管等功能。  这样一来就好明白了。小编家里有只猫,出远门时,也想看看它在家状况如何。所以,我购买了一款摄像头,这台摄像头连上WIFI后,即使我在新加坡,我也能实时看到猫的实时动向。再者,冬天寒冷,小编想一回家就可以躺在沙发上吃个雪糕。那么我下班时就可以通过手机远程开启家里的空调,达到舒适温暖的效果。这两个实例,究其根本,都是物联网

2021-12-07 09:12:46 4455

原创 从零学物联网技术:C语言结合数据类型,数据类型c语言自学指南,C++从入门到精通教程

在C语言的数据类型中,除了基本数据类型,还有常见的数据类型就是结合数据类型,什么是结合数据类型呢?比如说,当我们感冒了去看医生时,医生通常会给开一些感冒冲剂和一些颗粒的西药,并且告诉我们要结合服用,这里结合的意思就是两种药一起使用。那结合数据类型的意思其实就是一种数据类型和另一种数据类型搭配使用,但是需要注意的是,结合数据类型一定不能像基本数据类型那样单独的和变量名一起使用,必须要和基本数据类型搭配着一起使用,那结合数据类型有哪些呢?首先是我们学习C语言时最常听说的指针( * ),很多人都认

2021-12-03 10:30:34 2791 2

原创 这些神器,拯救了千千万万的苦逼程序员

速完成目标,善于借助工具,可以放大效果,做更大的事情,实现更多可能。别人不会的,你要会,别人会的,你完成的更快更好,这样才能应得职场上的主动权。下面是源妹儿根据江湖道听途说,搜索验证之后整理的一些开发工具,希望对大家有所帮助。1、Responsively App:网页调试必备法宝做过前端的都知道,现在的互联网公司越来越重视网页在移动端的使用体验,是移动端的尺寸和型号太多,在不同的移动端上进行设备调试是个非常繁琐的工作。虽然Chrome浏览器默认的工具也还不错,但是一次只能针对一种尺寸,

2021-12-03 09:52:22 8313

原创 C/C++程序的设计机制:Pimpl机制,嵌入式物联网工程师入门教程

我们平时在编写C/C++程序时我们都会在源文件(后缀为.c或.cpp的文件)中包含头文件,当头文件内容发生改变时,包含其的源文件在编译时也需要重新编译,也就是现在假如有如下关系图:这里的N个cpp文件都包含了A.h,当每次修改A.h内容,再次编译时这里的N个cpp文件无论内容是否改变都将重新编译!这时就好比是牵一发而动全身,会导致编译效率低下;那么该如何解决呢?也就是如何才能做到既能兼顾头文件内容的可扩展兼容性,又能去掉那些重复无效的编译(编译那些无需再次编译的源文件即内容并未发生改变的源.

2021-12-03 09:46:38 356

原创 最新大厂时薪排行榜出炉,一起来看看吧

选择一份工作时,我们一般都会看中薪资、福利等比较直接的数据,其实,时薪也具有一定的参考价值,它能代表单位时间内你的报酬是多少。最近,各大互联网厂的初级、中级、高级、资深和专家等级别时薪曝光,一起来看看吧。▲图片来源职场对标,如侵删从这几组排行榜中,我们不难发现,拼多多的初、中级的时薪具有一定优势,而更加耐看的则是微软、美团。不管怎样,互联网大厂的时薪都不低,这也是大家对互联网无限憧憬的主要原因。但大厂薪资高,也很难进,想要拿一份高薪水的互联网工作,该怎么做呢?...

2021-12-01 15:14:08 1318 2

原创 嵌入式物联网入门教程:C语言数组指针

数组指针:存放多维数组首地址的变量关于数组指针这里,最容易混淆的就是数组指针和指针数组。因此,我们需要清楚指针和数组。数组:同一数据类型的集合。在c语言里面,数组的定义方式为:元素数据类型 数组名 [ 元素个数 ] ;如下:int arr[4] = {0}; // 一维数组数组除开数据类型不同以外,分为一维数组、二维数组、三维数组……。一个“ [ ] ”表示一维,如下:int brr[3][4] = {0}; // 二维数组int crr[2][3][4] = {0};

2021-12-01 15:04:44 281

原创 嵌入式物联网工程师,linux内核链表之HashList

内核链表之HashList哈希链表(HashList/hlist)的设计初衷是为了方便快捷的查找,为了降低Hash表中键的冲突,一般设计会将Hash桶的数量设计的比较大。Linux链表设计者认为常规的双指针头结点的双向循环链表设计对于大数量桶的Hash表过于浪费,从而设计一套适合于Hash表的只有单指针的表头。该表头只有指向首节点的指针,没有指向尾节点指针,从而在海量Hash表中能够将表头存储空间减少一半。Hash链表这种单头指针设计缺失了对尾结点的时间复杂度的O(1)访问。同样也带来了对不同类..

2021-12-01 14:00:53 696

原创 嵌入式物联网入门:物联网工程就业方向及前景

近几年物联网专业学的人越来越多,对其专业的认可声也有,但质疑物联网前景的人也大有人在,认为其学的东西太杂太乱,在就业时处于一个三角灰色地带,谁都不想要。

2021-12-01 10:59:47 5225 1

原创 WEB大前端:5分钟玩转Axure之自适应设计(带案例讲解)

实现Axure的自适应设计,首先先明确我们要实现对哪些屏幕分辨率的覆盖。

2021-12-01 10:14:29 2182

空空如也

空空如也

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

TA关注的人

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