番茄工作法使用心得

一 番茄工作法概述 每25min为一个番茄钟,每个钟结束后休息5min,每4个钟休息20-30min。 主要步骤包括: 长期维护一个“活动清单”,清

DNS简述

1 DNS是什么 DNS(Domain Name System)是互联网的一个重要组成部分,它的主要功能是进行域名管理并且实现域名和IP地址的相互转换。在TCP/IP网络模

ping程序原理

ping通常作为"测试对方主机是否可达"的手段,而实际上这种手段有很多种,依据不同的协议来实现,本质上都是发送一个数据,

tcp如何实现可靠的传输

TCP属于传输层协议,传输层的数据段是封装在网络层的IP数据包内传输的,而网络层传输并不可靠,比如可能会出现丢包情况,并且每个IP数据包在路

网络分层模型

网络分层模型中比较常见的是TCP/IP 四层模型和OSI 七层模型,我们先介绍TCP/IP 四层模型,再用比较的方式介绍OSI 七层模型,至于其它的

第k个顺序统计量-数组中第k小的元素

要从一个数组中找出第k小的元素,最容易想到的是快速排序,但是快速排序解决这个问题有很多不必要的操作,在快速排序中,根据“哨兵”元素把数组分成两部分,然后对两部分进行递归处理,第k个顺序统计量的算法也借鉴这种思路,我们称为“快速选择(quick select)算法”,但是快速选择算法每次只需要处理第K个元素所在的那一部分就行,我们的目的只是找到目标元素,随着递归次数的深入,快速选择算法要处理的元素会越来越少(而快速排序随着递归的深入,每次递归处理的元素总数依然是n),这种差别是很大的,后面分析时间复杂度时可以得知快速选择算法的期望运行时间是$\theta(n)$。

算法实现

快速选择算法跟快速排序类似,主要步骤就是分组算法:根据哨兵元素把数组分成两组,一组小于哨兵,一组大于哨兵,然后进行递归调用。

shell编程

1 基本概念

  • shell是用户和内核之间的桥梁,shell自带的叫内置命令,其它应用程序的命令叫外部命令
  • shell是一种脚本语言,支持基本的编程元素,如数组,变量,字符串,注释,四则运算,逻辑运算,if-else,for,case-in,until等

jvm之自动内存管理-垃圾回收机制

自动内存管理主要作用在堆(heap)上,而虚拟机规范并没有限定自动内存管理的实现方式,本文以时下流行的HotSpot虚拟机为例,介绍其中的自动内存管理(主要是垃圾回收)机制,以及它提供的几款垃圾回收器(Garbage Collector,简称GC)。