在单片机中由于内存资源紧张,不可能给每个任务分配专有的内存区,尤其是涉及到通讯模块的程序,对内存的使用更是敏感。为此开发一个简单的内存管理库,对以后的开发还是有着不小的帮助的。 功能实现:内存动态分配、内存动态释放、内存碎片回收 heap.c // 内存划分:申请的一块内存分为两部分,一部分用于存储 ...
分类:
其他好文 时间:
2020-01-06 17:44:55
阅读次数:
79
堆排序(Heap Sort)是指利用堆这种数据结构所设计的一种排序算法。因此,学习堆排序之前,有必要了解堆! 我们知道,堆分为"最大堆"和"最小堆"。最大堆通常被用来进行"升序"排序,而最小堆通常被用来进行"降序"排序。鉴于最大堆和最小堆是对称关系,理解其中一种即可。本文将对最大堆实现的升序排序进行 ...
分类:
编程语言 时间:
2020-01-04 22:29:55
阅读次数:
93
/* * java运行内存: * 堆(heap):存储的全是对象,每个对象都包含一个与之对应的class信息 * 只有一个heap,被所有线程共享,heap中不存放基本数据类型和对象引用,只放对象本身 * 栈:每个线程都有属于自己的栈(用户态栈),栈中保存基本数据类型的对象和自定义对象的引用,这个引 ...
分类:
编程语言 时间:
2020-01-04 12:15:42
阅读次数:
82
问题: 测试的某个产品登陆之后有个引用外部站点js的请求半天都无法返回: https://cdn.heapanalytics.com/js/heap-3497400264.js 导致网页一直在打转,Selenium的driver也无法对页面进行下一步的操作。 这个js当时在美国的机器上可以马上返回, ...
分类:
Web程序 时间:
2020-01-03 14:13:26
阅读次数:
104
JVM内存结构 Java内存模型是指Java虚拟机的内存模型,我们来看下Java内存模型的图片: VM内存模型主要分为三块:Java 堆内存(Heap)、方法区(Non-Heap)、JMV栈(JVM Stack)、本地方法栈(Native Method Stacks)、程序计数器(Program C ...
分类:
其他好文 时间:
2019-12-31 23:34:36
阅读次数:
102
JAVA在程序运行时,在内存中划分5片空间进行数据的存储。分别是:1:寄存器。2:本地方法区。3:方法区。4:栈。5:堆。 基本,栈stack和堆heap这两个概念很重要,不了解清楚,后面就不用学了。 以下是这几天栈和堆的学习记录和心得。得些记录下来。以后有学到新的,会慢慢补充。 一、先说一下最基本 ...
分类:
编程语言 时间:
2019-12-30 19:43:14
阅读次数:
80
介绍 Java堆(Java Heap)是Java虚拟机所管理的内存中最大的一块。Java堆是被所有线程共享的一块内存区域,在虚拟机启动时创建。此内存区域的唯一目的就是存放对象实例,几乎所有的对象实例都在这里分配内存。Java堆是垃圾收集器管理的主要区域,因此很多时候也被称做“GC堆”。如果从内存回收 ...
分类:
其他好文 时间:
2019-12-28 22:47:48
阅读次数:
78
堆排序终于搞明白了,我知道过几天肯定会忘,希望这篇文章和代码能让我快速回忆起。 堆排序的思想就是,构造一个大顶堆或者小顶堆,然后把堆顶元素换到末尾,调整堆,重复。把过程分解为两步,第一步:建堆。第二步:排序。 大顶堆对应升序;小顶堆为降序。 代码如下: package heap; /* * 堆排序 ...
分类:
编程语言 时间:
2019-12-25 02:00:34
阅读次数:
85
package com.ex.cy.demo4.alg.graph.ewdi; import com.ex.cy.demo4.alg.heap.IndexMinPQ; import java.util.LinkedList; import java.util.List; //A* 算法 // 属于一 ...
分类:
编程语言 时间:
2019-12-24 11:28:43
阅读次数:
104
刚开始学treap。。同学在台上给我们讲,貌似除我之外的机房dalao们都听懂了就我发呆。。。(滑稽) 于是,事后的窝只能自己上网翻书研究了。。。。 treap: treap=tree+heap,树+堆 也就是说,这个东西是个树,但是满足堆的性质。 前置知识: BST二叉搜索树: 度娘曰: 若它的左 ...
分类:
其他好文 时间:
2019-12-22 11:03:19
阅读次数:
90