学习笔记·堆优化$\mathscr{dijkstra}$】的更多相关文章

嘤嘤嘤今天被迫学了这个算法--其实对于学习图论来说我内心是拒绝的\(\mathscr{qnq}\) 由于发现关于这个\(\mathscr{SPFA}\)的时间复杂度\(O(kE)\)中的\(k \approx 2\)好像只针对于稀疏图?\(emmm\)想不到时间复杂度居然还有数据分治这一说\(ORZ\) 好的,对于我的图论而言,好像只会\(MST\).\(\mathscr{MT \ \ Law}\)和最短路?哦呵呵呵呵那可真优秀啊\(QAQ\) 要不是今天上午学了堆优化的,没准我连普通的都不会了…
C语言笔记     栈区     栈stack是一种先进后出的内存结构,所有的自动变量,函数的形参都是由编译器自动放出栈中,当一个自动变量超出其作用域时,自动从栈中弹出.出入栈是由C语言编译器自动分配释放.     栈不会很大,一般都是以K为单位. 栈溢出:当栈空间已满,但还往栈内存压变量,叫做栈溢出. 速度较快,效率较高   堆区     堆heap和栈一样,也是一种在程序运行过程中可以随时修改的内存区域,但是没有栈那样先进后出的顺序.     堆是一个大容器,它的容量要远大于栈,在C语言中,…
参考资料:http://blog.csdn.net/miraclestar/article/details/6039743 Java内存区域模型主要分为4部分 1.方法区 2.本地方法栈 3.栈 4. 堆 1.方法区也称"永久代” .“非堆”, 它用于存储虚拟机加载的类信息.常量.静态变量.是各个线程共享的内存区域.运行时常量池:是方法区的一部分,Class文件中除了有类的版本.字段.方法.接口等描述信息外,还有一项信息是常量池,用于存放编译器生成的各种符号引用,这部分内容将在类加载后放到方法区…
堆 Heap 一个 JVM 只有一个堆,堆也是 Java 内存管理的核心区域.在 JVM 启动时堆被创建,同时大小在启动时已设定好,堆是 JVM 管理最大的一块内存空间,其大小可以调节. 堆的内存空间物理上可以不连续,逻辑上连续 所有线程共享堆,甚至可以在堆中划分线程私有的缓冲区 所有的对象实例和数组都存放在堆中,保存所有引用类型的真实对象.在栈帧中保存引用,引用指向对象或数组在堆中的位置 方法结束后,堆中的对象不会被马上移除,只在垃圾回收时才被移除,因此堆是垃圾回收的重点区域 堆的内部结构 J…
一.可维护性优化 1.添加注释 注释能够增强代码的可读性以及可维护性,当然,理想情况是满满的注释,但这不太现实.所以我们只需要在一些关键的地方添上注释: 函数和方法:尤其是返回值,因为直接看不出来 大段代码(功能模块):说明模块功能 复杂算法:写出关键点,方便理解 Hack:说明为了修复什么问题,当前方案是否完善,能否改进 2.“暗示”变量类型 通过初始值来暗示,例如: var found = false; var count = 1; var name = ''; var student =…
这一部分主要介绍代码层的优化.了解如何编写高效而精炼的代码,正确的使用函数方法.1.字符串优化处理Java语言中,String对象可以认为是对char数组的眼神和进一步封装.它主要由3部分组成:char数组.偏移量和String的长度.String对象的三个基本特点:不变性,针对常量池的优化,类的final定义. 不变性:是指String对象一旦生成,不能再对它进行改变,即immutable模式.不变模式的作用在于当一个对象需要被多线程共享,并且访问频繁时,可以省略同步和所等待的时间,大幅提高系…
豆瓣读书:http://book.douban.com/subject/19969386/ 第一章 Java性能调优概述 1.性能的参考指标 执行时间: CPU时间: 内存分配: 磁盘吞吐量: 网络吞吐量: 响应时间: 2.木桶定律   系统的最终性能取决于系统中性能表现最差的组件,例如window系统内置的评分就是选取最低分.可能成为系统瓶颈的计算资源如,磁盘I/O,异常,数据库,锁竞争,内存等. 性能优化的几个方面,如设计优化,Java程序优化,并行程序开发及优化,JVM调优,Java性能调…
ext4:(rw,noatime,nodiratime,nobarrier,data=ordered)xfs: (rw,noatime,nodiratim,nobarrier,logbufs=8,logbsize=32k) ssd: trim innodb_page_size=4k 减小块大小,提搞命中YU innodb_flush_neighbors=0 EG:如果当前系统CPU内核16,读写比3:1innodb_read_io_threads=12 innodb_write_io_threa…
Linux服务器优化 序言: 服务器操作建议 1.严格按照目录规范操作服务器 2.远程服务器不允许关机 3.不要在服务器访问高峰运行高负载命令 4.远程配置防火墙时,不要把自己踢出服务器 一.禁用不必要的服务 ntsysv命令:前面带*号的代表下次开机自启动! 一定要开启的基础服务: network    网络服务 sshd         ssh远程管理服务 syslog      系统日志服务 iptables    防火墙服务 crond       系统计划任务服务 xinetd    …
本文将介绍CRM的三个内容追踪.监控及性能优化.追踪是CRM里一个很有用的功能,它能为我们的CRM调试或解决错误.警告提供有价值的信息:我们可以用window的性能监控工具来了解CRM的性能状况:最后就是对CRM及其DB进行性能调整以让CRM达到最佳状态.   一.追踪 有二种追踪方式,一种是部署级,这种方式追踪所有的CRM 服务器上的角色.服务,默认情况,log文件在C:\crmdrop\logs:另一种是服务器级追踪,这种方式只追踪当前机器上运行的服务器角色.服务.默认情况,log文件在C:…