链表

  • 三维十字链表八叉树的高效检索实现
    出了构建三维十字链表八叉树的高维度数据结构的方案。在八叉树的基础上,利用十字链表,将三个维度方向的叶子节点链接起来,这样可以有效地缩短查找点的时间以及减少时间复杂度;通过对三维八叉树和三维十字链表八叉树比较分析后发现,该算法提高了三维点云的数据查询和检索效率。1 算法设计用于表示物体表面信息的点云具有“稀疏性”[9],即点云空间中绝大部分没有点。在使用基于坐标的八叉树数据结构描述的点云空间中,存在“空体素”,而深度学习遍历算法的计算时要求逐个遍历相邻空间组

    枣庄学院学报 2022年5期2022-09-21

  • 基于哈希表与十字链表存储的Apriori算法优化
    提出了使用优化的链表数据结构进行存储,并提高支持计数效率,同时采用了候选生成方法来减少匹配候选项目集。文献[2]提出了一种基于MapReduce的频繁项集挖掘方法,在云计算中引入了MapReduce模型来实现Apriori算法并行化。文献[3]提出了一种基于标记事务压缩改进的Apriori算法,该算法优化了关联规则的参数,减少标签比较的次数。文献[4]提出了编码和适应度函数的方案,建立了关联规则的模式,提高了算法的效率和准确性。廖纪勇等[5]提出了一种基于

    计算机应用与软件 2022年7期2022-08-10

  • 嵌入式北斗网络时间服务器的Web网页实现
    -M4;RAM;链表1 时间服务器功能描述北斗卫星接收终端接收北斗导航卫星发射的RNSS(Radio Navigation Satellite System,无线导航卫星系统)无线电波信号,在设备内部通过PVT解算,计算出用户当前的位置、速度以及时间信息。北斗的时间信息具有非常好的特性,其中包括年、月、日、时、分、秒等完整信息,并且其输出的1pps秒脉冲上升沿,对时精度可达到20ns以内,是一种非常好的时间基准源。北斗网络时间服务器就是利用北斗接收终端中精

    电子产品世界 2022年8期2022-05-30

  • 自适应业务场景的数据库冷热数据识别算法
    访问位的方式减少链表使用,节省内存空间。在不确定冷热数据规律的前提下,克服现有冷热数据识别算法单一化不足,综合考虑冷热数据情况,根据业务场景需要,自适应调整冷热数据识别策略。ARC算法将缓存区分成两部分,使用LRU链表和LFU链表管理。其中LRU链表用于存储最近只被访问一次的数据页,ARC算法认为在短时间内被访问两次及以上的数据是“高频”热数据,因此LFU链表用于存储最近被访问两次及以上的数据页。另外设置两个辅助链表分别存储从缓存区链表LRU或LFU淘汰数

    现代电子技术 2022年7期2022-04-13

  • C 语言程序设计中链表的教学方法
    21001)一、链表的知识重点所谓链表,是指由同一类型的若干个结构体类型数据(每一个数据称为一个“结点”)通过指向同一类型的结构体的指针变量,将分散在各个不连续存储区域中的各个结点依次连接起来[1]。结点中的成员必须具备以下特点:其一,必须有数据项,即必须有对用户有用的数据;其二,必须有指针域,即用来存放下一个结点地址的一个指针类型数据项。链表分为单向链表、双向链表和循环链表,本文只介绍单向链表。单向链表要求:必须有一个存放第一结点地址的头指针,通过头指针

    辽宁工业大学学报(社会科学版) 2021年5期2021-11-04

  • STL模型冗余顶点全域哈希处理算法
    中,生成一个数据链表,将冲突数据存储在链表中,链表法的引入解决了冲突的存储问题。常用的哈希函数构建方法有:除法散列法、平方取中算法、乘法散列法、加法散列法等。对于哈希算法的评价原则是:(1)哈希运算速度快。(2)减少冲突的发生。(3)减小哈希表的装填因子。理论上不存在一个哈希函数使得关键字集合能够完全独立的分布在哈希表中,但是好的哈希函数应该使哈希运算结果能够尽量满足简单均匀哈希假设:每个数据所对应的关键字都等可能的映射到哈希表中任何一个槽位中,且该映射于

    机械设计与制造 2021年9期2021-09-23

  • 趣味数学——勾股数
    理的3个数,加入链表,然后显示出来,这个比较好理解。但运行后发现,有重复的项(比如3、4、5和4、3、5),共104项实际应为52项,说明恰好重复2次,那有办法去除重复的项目吗?我們把每个c值加入链表,然后在下次得到满足条件的值时,就查询一下,这几个值在不在链表里:在,就是重复,不加入链表:不在链表里,那就加入进来!这样就不会有重复的数据了。这段代码的作用就是去重。如果a.b都包含在链表里,就说明是重复数据,所以就做下标记0:如果a.b都不包含在链表里,就

    电脑报 2021年25期2021-08-27

  • 关于数据结构双向链表中插入节点的核心步骤探讨
    数据结构中,双向链表是一种典型的数据存储结构,也是教学当中的重点案例。目前,在出版的一些数据结构相关教材中,对于双向链表中节点插入的讲解示例中,大多数只展示了指针方向变化的一种顺序[1-4]。在双向链表中,每一个节点都带有两个指针域和一个数据域[5]。在链表中,每插入一个节点,会有四个指针的指向发生变化,按照一定的操作顺序,就能完成节点的插入工作。2 双向链表节点插入算法描述2.1 基于双向链表节点的类型定义在双向链表中,一个节点包括一个数据域、一个前驱和

    中阿科技论坛(中英文) 2021年7期2021-07-18

  • 蒙特卡罗模拟中基于双向链表的元胞链表方法
    罗模拟中基于双向链表的元胞链表方法王逸梅, 王少云, 童朝晖*(宁波大学 物理科学与技术学院, 浙江 宁波 315211)蒙特卡罗方法; 非局域移动; 双向链表; 元胞链表方法1 方法和算法这一部分详细描述了基于双向链表的元胞链表方法, 并且给出了相应的Fortran伪代码. 首先, 描述了双向链表的构造和如何调用其中的正向链表来计算能量. 然后, 描述粒子删除和插入后双向链表的更新. 最后, 使用元胞链表的方法来实现Metropolis算法中粒子的随机移

    宁波大学学报(人文科学版) 2021年4期2021-07-07

  • 基于DBP的Top-k高效用项集挖掘算法
    法[5]采用效用链表结构,在算法第一次扫描数据库时将关键信息存入效用链表,之后只需扫描效用链表信息,通过连接操作和递归效用链表构建过程挖掘高效用项集。TOPKHUP[7]算法提出HUP-Tree结构,将事务效用保存到树结构中,使用HUP-Tree计算项集效用。TKHUP[8]算法采用投影方式将事务效用链表投影到投影表,并通过4种策略操作子投影表构建过程挖掘Top-k高效用项集。KHMC[9]算法在TKO算法基础上提出多种修剪策略降低候选集产生。Vert_T

    计算机工程与设计 2021年6期2021-06-28

  • 一种基于双窗口的NAND闪存缓冲区管理算法
    时都需要反向遍历链表,算法效率有待提高。通过对NAND闪存缓冲区管理算法进行更深入的研究,针对上述3种算法的不足,设计一种基于双窗口的NAND闪存缓冲区页面置换算法——DW-LRU(double windows LRU)算法。与已有算法不同的是:将冷、热2条LRU队列细分为冷干净、冷脏、热干净、热脏4条LRU链表,并且引入新近度OR(operation recency),进一步细分页面的置换代价。算法采用新的置换策略调整页面,直接从各链表LRU端置换页面,

    科学技术与工程 2020年21期2020-08-29

  • 一种基于链表的改进Apriori算法∗
    ,该算法采用树和链表的混合结构,只需扫描两次事务数据库,且无需产生候选项集,但算法的局限性体现在频繁的构造条件模式基,对于大规模数据集来讲,FP-Growth算法所构建的FP-Tree会非常庞大,可能无法存储于内存之中。FP-Growth算法之所以高效,是因为采用特殊的数据结构将事务数据库压缩存储到内存中,避免了重复扫描事务数据库带来的性能瓶颈。学者们也采用了其他的数据结构来对事务数据库进行压缩存储,并在此特殊的数据结构上挖掘频繁项集。文献[3]提出用十字

    计算机与数字工程 2020年5期2020-07-13

  • 如何用链表实现一元多项式相加
    在计算机内可以用链表来表示,为了节省存储空间,只存储多项式中系数非零的项。 链表中的每一个结点存放多项式的一个系数非零项,它包含三个域,分别存放该项的系数、指数以及指向下一个多项式项结点的指针。对于如何利用链表将两个一元多项式分别存入两个链表中,通过相加将链表合并后并输出合成后的新的一元多项式。在运行的过程中主要所运用的就是利用链表的data域相加完成链表的加法运算,输出相加之后的新一元多项式。数据结构的存储结构有两种:顺序储存结构和链式储存结构,而我们所

    青年生活 2020年16期2020-07-06

  • Dancing Link在数独求解中的应用
    nk 技术,十字链表的使用和启发式的搜索方法,大大提高了程序的运行效率。双向链表又叫双链表,是链表的一种。双向链表的存储结构往往是有一个空的结点来表示头指针。然后每一个结点有一个直接前驱值域和一个直接后驱值域。如果是十字链表的话,结点中指针的值域会变成四个。在单向链表中删除一个结点是非常麻烦,而且低效的。双向链表有着优美的结构,可以方便的删除任意一个结点。公式如下:L[R[x]] = L[x]; R[L[x]] = R[x];其中x指的是编号,LR来记录左

    消费导刊 2019年33期2019-09-09

  • 基于NOR Flash的智能电能表数据管理方法
    数据的特性,采用链表和重映射的概念思想,提高了访问NOR Flash的科学性和灵活性,且资源占用低,数据存取便捷高效,适用于智能电能表。3.1 NOR Flash分区设计以Sector为单位,将NOR Flash划分为链表区和数据区两部分。链表区存放各类数据在数据区的对应存储地址;数据区存放各类数据的具体内容。数据存取时,先在链表区查找该类数据在数据区的对应存储地址,再到数据区对该类数据的具体内容进行存取操作。3.1.1 链表区结构设计链表区由多个链表组成

    自动化与仪表 2019年1期2019-02-21

  • 复杂内核数据结构的形式化描述和验证
    结构是指数组、单链表、双链表、二叉树等可以归纳定义的数据结构.规则数据结构可以使用基于归纳谓词的分离逻辑断言来描述,已经有大量的研究工作[1-5]关注这类数据结构的自动化和半自动化验证技术.而复杂数据结构是指将多种规则数据结构组合在一起来管理组织数据的数据结构.内核设计者为了优化程序的时空间效率通常会采用复杂数据结构来管理内核数据.内核中复杂数据结构一般有由多种结构组成和多个结构间高度耦合的特点.国外已有的操作系统内核验证项目,譬如seL4[6,7]、 C

    小型微型计算机系统 2019年2期2019-02-15

  • 跟麦咭学编程
    起玩。1. 理解链表的概念。2. 掌握新建链表的方法。3. 掌握将记录添加到链表、删除链表中指定记录的方法。1. 程序设计2. 链表的基本知识如图1所示,把变量比作一个置物的格子,它可以放置任何物品,但同时只能放置一个,下一个放进去时,自动替换掉前一个。相比变量而言,链表就是多个置物的格子,每个格子都可以放置物品。取用物品时,报物品的序号即可,也可以添加、删除指定位置的物品。3. 新建链表打开网页http://scratch.maiji100.cn/Scr

    第二课堂(课外活动版) 2019年12期2019-02-10

  • 大整数阶乘精确值的动态储存双向链表算法研究*
    重要意义,其中,链表存储结构在操作系统中有重要运用[1-2]。在计算机系统中,表示不同类型的数时,由于计算单元存储位数的限制,表示精确数据的范围是一定的[3],比如16位的无符号整数的表示范围是[0—216-1],超过这个范围,只能采用浮点数。当然,浮点数是非精确值。假如在一定的场合,需要得到精确值时,必须采用一定的算法来实现。高精度大整数运算在计算机数据加密技术中有重要应用,限于一般程序设计语言编译系统并不提供直接的运算支持,所以人们提出了各种运算方法。

    科技与创新 2018年16期2018-08-21

  • 一种基于链表的战场态势显示方法
    [2]。2 基于链表的战场态势显示方法为了克服现有技术的不足,本文设计了一种基于链表的战场态势图标显示方法。首先根据地图界面图标显示需求,将所有需要显示的图标按照类型的不同划分为若干个图标子集,并在图标成员初始化过程中,将每一个需要显示的图标生成相应的成员结构体,并按照图标子集的划分,将上述成员结构体构成若干子集合链表,再将上述子集合链表作为链表成员,进一步构成全集合成员链表;在地理信息报文处理过程中对接收到实时更新的地理信息报文进行相应函数处理和消息过滤

    现代导航 2018年2期2018-05-10

  • 透明物体的多光源实时光照
    果。本文采用光源链表的方式以统一地渲染三维场景中不同透明程度的几何对象。1 算法概述随着光源数量和场景复杂度提高,前向渲染(Forward Shading)[9]算法并不能高效进行光照计算。而延迟渲染算法通过解耦几何计算和光照计算,可以大幅度提高渲染效率。但在延迟光照中,几何缓冲区只能保存的是深度值最小片元(Fragment)的信息。如果在同一个像素位置同时存在透明片元和不透明片元,并且透明片元在前,那么几何缓冲区不能同时保存多个片元信息,从而没法同时渲染

    现代计算机 2018年2期2018-04-02

  • 基于链表的实时屏幕空间反射技术
    点丢失。我们使用链表的方式动态对物理缓冲区进行扩充,将背面信息以链表的方式进行存储。当求交点在场景背面时,我们会查找链表,使得背面交点信息被补全。1 屏幕空间反射屏幕空间反射算法是基于图像的算法,它从当前视点出发在G-Buffer中做光线跟踪,求到实时的反射结果。屏幕空间反射算法存在一下几点问题:(1)对于几何体不可见的部分,我们没有办法计算它在屏幕中的反射结果,因为反射结果是基于不完整的场景信息。如图1所示,从视点出发发射两条光线,求反射光线与场景的交点

    现代计算机 2018年4期2018-03-14

  • 基于MTF规则的非阻塞自组织链表
    则的非阻塞自组织链表康 超 凡(天津大学计算机科学与技术学院 天津 300000)自组织链表是一种特殊的链表。与静态链表相比,将自组织链表应用于并发环境下,需要考虑自组织操作对链表状态的改变。因此,对于并发自组织链表,尤其是具有非阻塞特性的自组织链表的研究更加复杂。近些年来,并发链表的研究成果显著,而关于并发自组织链表算法的研究屈指可数。在这种背景下,提出了一种基于MTF(Move-To-Front)自组织规则的无锁自组织链表,证明了该链表算法实现了在集合

    计算机应用与软件 2017年7期2017-08-12

  • 循环链表式滑动窗的设计与实现
    程系 张 剑循环链表式滑动窗的设计与实现武警工程大学信息工程系 张 剑由于数据流具有无限性及连续性,滑动窗口的应用可以有效的对数据流上的操作加以限制,但传统向量型滑动窗在连续数据的处理上计算开销大,效率低。本文提出一种循环链表式滑动窗口技术,以链表的形式存储每个子窗口所在位置,将新数据直接插入子窗口中,使滑动窗口在处理数据流时不必频繁移动窗内数据。实验结果证明,该方法能有效减少计算开销,增加数据处理效率。循环链表;滑动窗口;流数据0 引言随着信息网络的发展

    电子世界 2017年14期2017-08-02

  • 非固定类型数据结点链表的一种实现方法
    摘 要:链表是用一组任意的存储单元来存放线性表中的结点,这组存储单元可以不连续地分布在内存中任何的位置上。链表存储数据,对于结点的数据域来说,一旦确定了结点类型之后,数据域的数据类型就确定了,这导致了链表的不通用性。也就是说一条链表上只能存储一种或者几种已经确定的数据类型的数据。但是要想在此条链表上存储另外一种或者几种数据类型的数据就不能适用了。因此,我就解决此类问题,使得后一个结点的数据类型不受前一个结点数据类型的影响。这种方法不是单纯的一种数据类型而是

    中文信息 2017年4期2017-05-23

  • C++的基于函数模板实现单向链表
    函数模板实现单向链表宫彦军1史小飞2(1.湖南科技学院 电子与信息工程学院,湖南 永州 425199;2.湖南科技学院 图书馆,湖南 永州 425199)在“C++程序设计”教学中函数模板部分是难点,文章给出利用链表函数模板实现单向链表节点的创建、有序插入和删除的操作,文章中的链表函数模板可以实现具有任意数据域的单向链表节点的创建、有序插入和删除,只是要事先设计好链表的数据类或者数据类型,对于有序插入,数据类型具有比较运算,如果是数据类,需要重载数据类的比

    湖南科技学院学报 2017年10期2017-02-05

  • 一种基于布隆过滤的快速冗余数据块发现算法
    全体数据指纹FP链表存储在SATA硬盘中,每个FP值由两个指针链链接.一个双向指针链以指针Head为链头,根据FP存储的先后依次链接每个FP.最新存储的FP与Head链接,将此类链表称为Disk_FP链表;另一类指针链以BF2每个对应的比特位作为指针链头,链接BF2对应比特位值为1的所有FP值,将此类链表称为BF2_Disk_FP链表;(3) 图2中,Cache中部分FP的高速缓存链表.高速缓存链表中保存了当前最新的L个FP值,每个FP值仍然由两个指针链链

    中南民族大学学报(自然科学版) 2016年3期2016-11-01

  • 电能表系统数据存储的研究
    善方案。通过数据链表创造出一个可以自由伸缩的数据存储系统,形成了以数据块为存储单元的存储模式,解决了电能表系统中新增加数据会导致现有数据地址改变的问题。文章先从目前电能表系统数据存储的问题说起,随后提出了新的数据存储模型,并一一介绍了新数据存储模型的创建、读取、写入及删除等操作,并在电能表上成功实现了新数据存储模型。关键词:数据存储;数据索引;链表;数据结构引用格式:刘晓辉,李鹏,胡光娜. 电能表系统数据存储的研究[J].微型机与应用,2016,35(13

    网络安全与数据管理 2016年13期2016-08-04

  • 网架结构三维建模方法的研究
    格;坐标;字符;链表;数组联合国全球地理信息管理德清论坛部分采用了飘带式网架结构,图1为论坛的效果图,中间部分是飘带式网架。设计院给出了网架结构三维模型及剖面图,图2所示为网架的三维模型,其中杆件只是普通的CAD线段,没有截面尺寸信息以及连接件的信息,而这些信息通过图以及表格的形式存放在图纸中,由于网架结构非常复杂,设计院将网架结构按x方向、y方向以及z方向进行剖切,形成了60多张CAD剖面施工图纸。图1 论坛效果图Fig. 1 Grid effect d

    华东交通大学学报 2016年3期2016-07-12

  • 模拟淘汰程序的设计方法研究 ——以“猴子选大王”程序为例
    组法。(2)模拟链表法。(3)stl l ist实现。(4)数学推导法。关键词:猴子选大王;模拟;链表;stl l ist;数学推导问题:n只猴子围成一个圈。从第一只猴子开始,从1开始依次报数,报到m的猴子离开。从这只离开猴子的下一只开始再从1开始报数,报到m的再离开。以此类推,直到最后剩下一只猴子为止。这只剩下的猴子就是大王。现在编写程序,输入n和m,输出大王的号码。1 模拟静态数组法学习了静态数组后,可以直接用静态数组来模拟淘汰的过程。原理:设置n+1

    无线互联科技 2016年9期2016-06-21

  • R5F104BC单片机Flash中数据存储方法研
    非易失性存储器;链表;R5F104BC引言目前,非易失性存储器(Non-Volatile Random Access Memory)主要类型有铁电存储器(Ferromagnetic Random Access Memory,FRAM)、电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)和闪存 (Flash Memory)等。上述3种存储器性能比较见表1。表1 非易失

    单片机与嵌入式系统应用 2016年5期2016-05-27

  • 《奇趣故事——链表和字符串》教学设计
    搭建技巧,特别是链表数据合并字符串这一难点,对学生的逻辑思维能力和语言组织能力都有一定的要求,所以在这部分的讲解过程中教师要注意将内容设计得更加深入浅出,让学生容易理解。学习内容分析《奇趣故事——链表和字符串》是清华版信息技术五年级下册第六课,本节课介绍了两个新的概念:链表和字符串。新建链表及为其增添数据不是难点,但将链表中的数据合并成一个字符串是一个难点,要求学生具备一定的逻辑思维能力和组织能力。在Scratch编程创作过程中,数据的获取、存储和输出是非

    中国信息技术教育 2016年8期2016-05-14

  • 基于游程编码的最大频繁项集挖掘算法
    者提出了一种基于链表运算的挖掘算法,该算法虽然抛弃了一部分的候选项,但是仍然会产生大量的冗余项.在文献[5]中,作者提出了一种基于布尔矩阵的最大频繁项集的挖掘算法,由于实际应用中数据量非常庞大,因此用布尔矩阵存储数据库会占用很大的存储空间.针对以上存在的问题,文章提出了一种基于游程编码的最大频繁项集的挖掘算法RLCMAX.该算法不仅能减少事务数据库占用的存储空间,而且能有效提高算法的效率.2 算法描述2.1 数据库的游程编码表示在数据库中,可以用1表示某项

    赤峰学院学报·自然科学版 2015年19期2015-12-29

  • 静态链表在通信消息队列的应用——基于嵌入式项目开发
    30212)1 链表和队列链表是一种常见的重要的数据结构.链表可分为静态链表和动态链表.静态链表的“静态”二字是指内存的来源为静态内存,也就是说,静态链表的空间是事先走义的.在C语言中,静态链表是用数组实现,其存储结构是顺序,其物理地址是连续的.而动态链表是动态申请临时开辟的内存空间,所以每个节点的物理地址不连续,要通过指针来顺序访问.队列(Queue)是只允许在一端进行插入,而在另一端进行删除的运算受限的线性表[1].(1)允许删除的一端称为队头(Fro

    邵阳学院学报(自然科学版) 2015年4期2015-12-14

  • 一种基于有序双端链表的高效排序算法
    新的基于有序双端链表的排序算法,即 ODListsort(ordered double-end linked list sort)算法。该算法是基于元素以链表形式进行动态内存分配的比较排序算法,主要由计算链表最大数量、插入操作和合并链表3个部分组成。本文首先介绍ODListsort排序算法的操作流程,然后分析其时间复杂度,最后通过数据测试实验对该算法和几种经典排序算法的性能进行比较。1 ODListsort算法ODListsort算法具体包含3个部分,分别

    武汉科技大学学报 2015年4期2015-11-05

  • 基于物联网的智能用电管理系统研究与实现
    表插入到等待扫描链表的尾部等待扫描发送任务来扫描发送。扫描线程以10ms为周期扫描等待链表,每次扫描都是从链表的Current-RecNo处开始扫描控制表。同时启动一个100ms定时器从WaitRecNo处开始扫描等待发送链表,把那些超时重发的控制表调整到链表尾部TailRecNo处,等待再次发送。总共定义了四条链表来维护整个控制表:扫描链表(ScanList)、删除链表(DeleteList)、无任务链表(NoneList)和空闲链表(FreeList)

    湖北工业大学学报 2015年5期2015-01-18

  • VxWorks下基于辅助时钟的通用定时器设计
    2.2 定时节点链表的创建根据上述特点,可将所有的定时任务通过一个定时任务链表与基于辅助时钟设置的定时器关联起来,每当程序应用层添加一个定时任务,就往该定时任务链表添加一个定时任务节点。通常的添加方法是,插入时从链表头节点开始遍历,根据各个节点的剩余时间来确定插入位置,即将所要插入的定时任务节点按照相对其前一节点剩余时间的差由小到大排列。这样,当辅助时钟中断到来时只需对定时任务链表中的第一个节点剩余时间进行修改即可,而不必对整个链表进行遍历,从而减小了对实

    电子科技 2014年3期2014-12-18

  • 逢N退出的图形化算法设计
    如数组,单向循环链表等.例如在C++环境中以数组方式实现的代码如下:#include<iostream>#define NUM 13 //总人数using namespace std;void main(){ int num = NUM,flag=1,numArray[NUM+1];for(int i=0;i< NUM+1;i++)numArray[i]=i;//初始化一维数组的元素while(num !=1){ //若当前状态下剩余的人数num大于1.f

    四川文理学院学报 2014年5期2014-12-17

  • 单向链表快速排序算法*
    9)1 引言单向链表是一种典型的链式存储结构[1],目前多使用 Two-way MergeSort算法[2]对单向链表进行排序,虽然Two-way MergeSort算法时间复杂度为 O (n log2n)[1~4],但 其 空 间 复 杂 度 高 达O(n)[1~4],在一些嵌入式系统研发中,由于对存储空间的使用数量有较严格的限制,故并不普遍适用。排序算法中适应性最强且应用最广的是基于关键字比较的排序算法[1~4],因为排序的本质就是按照一定规则相互比较

    计算机工程与科学 2014年1期2014-08-04

  • C++并发引用计数垃圾收集器实现
    为零的对象空间。链表将所有对象关联起来,由线程共享,其结构如图1。工作线程创建对象后将对象插入链表中;垃圾收集线程遍历链表,从链表中删除引用计数为零的对象。链表头由指向链表节点指针、信号量、线程标识和线程属性四部分组成,工作线程结束时向垃圾收集线程发送信号,以回收资源和终止其运行。链表节点两个域分别指向下一个节点和指向某个堆对象。baseClass类定义了一个整型的引用计数变量ref,它是堆对象的父类。若有多个线程操纵对象的ref,baseClass类中需

    安庆师范大学学报(自然科学版) 2014年3期2014-07-19

  • 一种基于逐点插入Delaunay三角剖分生成Voronoi图的算法
    初始设置凸壳顶点链表:ConvexHull List;凸壳顶点数组:Vertex Array;剖分后三角形链表:Del-Tri List;三角形顶点链表:Tri-Points List 。2.2 建立凸壳凸壳建立有许多经典算法,如分治法、卷包裹法、格雷厄姆扫描法和增量法等[4-5]。卷包裹法和格雷厄姆扫描法等需要对点集进行排序,而增连法则不需要预先排序。本文来用增量递推算法,不需要排序。凸壳CH(S)具体建立步骤如下:步骤1 初始化凸壳顶点链表Convex

    微型电脑应用 2014年6期2014-07-02

  • 一种基于VMIC网的内存分配算法
    此提出了一种基于链表[2,3]的动态内存分配算法。1 VMIC网原理VMIC网主要是由VMIC板卡通过光纤等传输介质连接而成的。VMIC网中的每个计算节点都安装一块VMIC板卡,且每个节点的VMIC板卡的存储器中都有VMIC网上其他节点的共享数据拷贝。每个VMIC板卡都占有一段内存空间,当VMIC网中的任意计算节点向本地VMIC板卡写入数据时,该数据和相应的内存地址将被广播到网上所有其他VMIC板卡并存储在相同的位置。在极短的时间内,网上所有计算节点都可以

    重庆工商大学学报(自然科学版) 2013年12期2013-11-02

  • 约瑟夫环次序解的链表模算法
    约瑟夫环次序解的链表模算法白宇(山西大同大学数学与计算机科学学院,山西 大同 037009)对经典问题“约瑟夫环”进行分析,提出了一种全新的基于链表模运算的高速算法,给出了在条件遍历算法设计中运用模运算的一般思路,同时进行了算法分析和实验测试。约瑟夫环;链表计数;模运算经典问题“约瑟夫环”是由古罗马的史学家Flavius Josephus提出的,一般描述如下:已知n个元素,以编号1,2,3,…,n分别表示,顺序排列成一个环,从编号为1的元素依次计数,计数到

    山西大同大学学报(自然科学版) 2013年1期2013-09-12

  • C语言中指针链表的学习探讨
    摘 要:指针链表是一种最简单也是最常用的动态数据结构,它是对动态获得的内存进行组织的一种结构。本文通过教学实践,通过图示法从基本概念的理解入手,并深入讲解动态链表的建立,插入和删除,在教学过程中起到了良好的效果。关键词:动态;链表中图分类号:TP311.12C语言中存储数据的结构用的最普遍的是数组,包括简单类型的数组,指针数据和结构体数组等,但是他们在实际应用中,会因为实现定义过大的数组容量而造成内存的浪费,或者因为保守的预测分配而满足不了实际使用的要求,

    计算机光盘软件与应用 2013年10期2013-08-14

  • 基于人脸检测和特征的跟踪方法
    理,并给出了待删链表的定义和作用;第四节是该文方法的实验例子说明.1 本文方法的提出背景事实上,第一类方法得到的位置信息准确可靠,并且单纯采用第一类方法就能解决对发生较短时间较小角度的低头、扭头、转头的情形引起的重复识别问题,但如果出现较长时间大角度的扭头、低头、转头,第一类方法就显得力不从心了.第二类方法由于是以一个降采样频率对人脸实施定位,所以该方法最突出特点是系统能较好的满足实时性要求,但是由于特征一般缺乏模版更新手段,在具有较多的与人脸特征相似的情

    山东理工大学学报(自然科学版) 2013年1期2013-06-28

  • 基于对象的反向映射机制的研究
    要是基于1对双向链表[4]:active链表和 inactive链表,这2个链表是Linux操作系统进行页面回收所依赖的关键数据结构,每个内存区域都存在1对这样的链表。那些经常被访问的处于活跃状态的页面会被放在 active链表上,而那些虽然可能关联到1个或者多个进程,但是并不经常使用的页面则会被放到 inactive链表上。页面会在这2个双向链表中移动,操作系统会根据页面的活跃程度来判断应该把页面放到哪个链表上。页面可能会从active链表上被转移到in

    实验室研究与探索 2013年1期2013-04-10

  • 基于μCOS-II的TLSF动态内存分配算法的应用与仿真
    块由单向或者双向链表管理。查询空闲内存块的时间复杂度为O(n)(n为内存块数目),当内存块数目较大时,不能保证查询内存块的实时性,所以不宜在RTOS中使用该算法。(2)索引查找算法索引查找算法使用排序二叉树等非常复杂的数据结构来管理空闲内存,具有复杂的实现过程,并且因采用的数据结构的不同而具有不同的性能。(3)分类搜索算法分类搜索算法把空闲内存划分为范围不同的多个区间,每个区间上的内存块由另一个数组链表管理,该数组链表保存着查询空闲内存块的头指针。需要说明

    网络安全与数据管理 2013年5期2013-02-21

  • 基于单向增长链表的关联规则挖掘算法研究
    0)基于单向增长链表的关联规则挖掘算法研究董 辉 (亳州职业技术学院信息工程系,安徽 亳州 236800)分析研究关联规则挖掘经典算法Apriori和FP-Growth算法,发现其不足之处在于构建和遍历各自数据结构的时间长、内存消耗巨大,降低了算法在时间和空间方面的效率。针对2种算法的缺陷,提出了LK-Growth算法,该算法不再构建FP-Tree,而是构建单向线性链表组结构,能有效地缩短发现频繁模式的时间和节省内存空间开支。研究结果表明,LK-Growt

    长江大学学报(自科版) 2012年1期2012-11-08

  • 基于DMA控制器的UART串行通信设计
    [1]。1.3 链表项及其标识DMA控制器使用链表项(LLI)来支持分散/聚集(Scattergather),分散/聚集是指DMA单次传输可以使用不必连续的内存空间,它的效果相当于若干个简单DMA过程的串连[2]。在分散/聚集模式下,源和目标数据区由一连串的链表来定义,每个链表项控制着一个数据块的传输,将这个数据块传输完毕后,选择并装载另一个链表项来继续DMA操作或停止DMA流。第一个链表项需要被编程到DMA控制器的对应通道。链表项所描述的传输数据包通常需

    电子设计工程 2012年6期2012-09-26

  • 基于十字链表的Apriori算法的实现
    040)基于十字链表的Apriori算法的实现宋广佳,张艳明(黑龙江中医药大学 现代教育技术与信息中心,黑龙江 哈尔滨 150040)针对A p r i o r i算法的若干不足,如需要多次连接数据库,多次扫描事务记录,在剪枝步骤比对次数过多等缺点,文章实现了把数据库映射到十字链表的方法,并且与传统A p r i o r i算法进行了对比,实验表明十字链表的方法可以大幅度减少数据挖掘所需时间,可明显减少连接及扫描数据库次数,减少剪枝步骤对比次数,提升算法执

    赤峰学院学报·自然科学版 2012年18期2012-09-01

  • 基于频繁项目集链式存储方法的关联规则算法
    方式,初始化存储链表,生成项目集和频繁1-项目集;②构造频繁项目集链表;③根据频繁项目集的定义及性质,对候选项目集链表进行处理,生成最大频繁项目集。3.1 初始化阶段把事务数据库中的事务转化成比特向量表达方式。即,在一个事物中出现第i个项目,则把对应项目的比特向量置为1,否则置为0。例如,项目集I= {A,B,C,D,E,F},事务数据库 T= {(ADE), (BCD), (ABCD),(BEF)},转化为比特向量表达式为 T= {(100110),(0

    计算机工程与设计 2012年3期2012-07-25

  • 数控铣床图形编程系统零件图元排序程序设计
    结构,定义了双向链表结点复合结构体类型。利用list列表容器存储非均匀B样条曲线信息。设计比较函数以及链表操作函数,简化了排序程序设计。数控铣床自动编程;排序程序;非均匀B样条曲线;双向链表1.引言在WindowsXP操作平台上,以Auto-CAD2004绘图软件为开发平台、采用可视化程序设计语言Visual C++6.0设计开发适于PC机数控系统上使用的数控铣床图形编程系统。系统框架结构如图1所示。(1)读入模块:读取存储零件各图元几何信息。设计人员采用

    电子世界 2012年11期2012-01-29

  • 链式存储结构上冒泡排序算法的研究与实现
    研究冒泡排序法在链表上的实现.文中讨论了冒泡排序在单链表上和静态链表上的算法及实现过程.最后分析了算法时间复杂度和空间复杂度.冒泡排序;存储结构;单链表;静态链表;算法分析冒泡排序是一种较简单的交换类排序算法.在相关文献中讨论了其在顺序表上的实现过程[1-4].它通过对相邻元素的交换,逐步将待排序列变成有序序列.其算法的主要思想是:反复扫描待排序记录序列,在扫描过程中顺次比较相邻的两个元素的大小,若逆序就交换位置.在排序的研究上近几年来也有一些新的方法,在

    通化师范学院学报 2011年10期2011-12-28

  • HL7在HIS系统中的应用研究
    2 消息定义规则链表的数据结构在进行消息构建/解析时,首先读入存储消息类型定义规则和消息段定义规则的文本文件,生成消息定义规则链表,以用于消息构建/解析时的有效性验证。论文设计了消息定义规则链表的“工”字型存储结构,由3条主线构成:第1条是消息类型定义规则链表,每个结点的数据域存储消息事件类型,指针域包括组成该消息类型的数据项链表的指针和指向下一结点的指针,消息类型的数据项指文本文件中消息类型后跟的除冒号、空格以外的消息段名和标志符号“[”“]”“{”“}

    中国医疗设备 2011年2期2011-10-09

  • 基于Snort系统的局域网P2P流量识别系统
    Snort系统的链表结构,设计了一种局域网P2P流量识别系统,该系统综合使用端口识别和特征匹配两种方法来提高检测的效率。首先介绍了P2P流量识别的传统方法;然后提出了一种基于Snort[1-7]系统的局域网P2P流量识别系统P2PSnort.1 传统的P2P流量识别方法1)端口识别法 端口识别法是根据TCP数据包或UDP数据包首部的源端口号或目的端口号识别一些常见业务的流量,如 HTTP,SMTP,Telnet,HTTPS 等。 多数 P2P 流量也可通过

    电子设计工程 2011年20期2011-07-13

  • 基于索引的文件备份方案
    1.3 备份文件链表对备份文件建立索引,具体就是先对文件类型进行分类,按文件类型名的字典顺序排序;而后将同类型的文件按文件名的字典顺序进行排序。用二维链表[5]的形式具体实现对文件进行索引排序,该链表叫做备份文件链表。如图2所示,横向链表为文件类型链表,每个文件类型节点含有该文件类型的相应信息,并对应着一个纵向链表,即文件指针链表。文件指针链表的节点叫做文件指针节点。每个文件指针节点含有该文件的相应信息并含有一个文件指针指向该文件的存储位置。这些文件指针节

    电子设计工程 2011年19期2011-06-05

  • 支持QoS保障的Ad hoc网络多信道MAC协议
    址的不同建立发送链表,实现数据信道上连续的帧交换,改善了系统吞吐量和时延特性。1 协议基本思想把整个信道分为1个控制信道和n个数据信道,这些子信道互不重叠且带宽相等,每个节点配置两部半双工收发机,1个用于控制信道,1个可在n个数据信道间切换使用。通信双方通过在控制信道上交换RTS/CTS/RES帧来预约数据信道,然后在数据信道上交换DATA/ACK帧进行通信。每个节点(如A)保存信道使用列表CUL[]和空闲信道列表FCL。CUL[]表项有 3个元素:CUL

    网络安全与数据管理 2010年15期2010-07-25

  • 基于数据结构的链表创建方法探究
    李 崇摘 要:链表是线性表的一种表现形式,是数据结构中的一个重要组成部分,而链表的创建方法直接影响人们对链表的理解,尤其是初学者。通过对“数据结构”多年教学实践经验的积累,对链表的创建方法进行了研究,并经过归纳和总结,提出了相对容易理解的创建思路;形成了简明、易懂的创建方法。关键词:数据结构;线性表;链表;顺序创建法;逆序创建法;有序创建法中图分类号:TP311文献标识码:B文章编号:1004 373X(2009)02 117 03Exploration

    现代电子技术 2009年2期2009-05-12