
经典算法解析
常耀斌
CTO,AI科学家。2024年,清华大学出版社发行《大数据架构之道和项目实战》《AI赋能企业数字化转型》《深度学习和大模型实战》
展开
-
关于网速带宽和吞吐量的详细阐述
目录服务器如何发送数据?数据在网线中的速度什么是带宽?带宽的单位什么影响了数据发送速度(带宽)?运营商为什么要限制带宽?什么是共享带宽?什么是独享带宽?什么是响应时间?系统吞度量要素?服务器如何发送数据服务器程序将需要发送的数据写入该程序的内存空间中; 服务器程序通过操作系统的接口向内核发出系统调用; 系统内核将用户态内存空间中的数据复制到内核缓冲区中去...原创 2018-09-10 11:23:30 · 5992 阅读 · 0 评论 -
希尔排序原理和图解
希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。 简单插入排序很循规蹈矩,不管数组分布是怎么样的,依然一步一步的对元素进行比较,移动,插入,比如[5,4,3,2,1,0]这种倒序序列,数组末端的0要回到首位置很是费劲,比较和移动元素均需n-1次。而希尔排序在数组中采用跳跃式分组...原创 2018-09-09 13:59:42 · 3531 阅读 · 1 评论 -
堆排序思想和案例图解
堆排序的基本思想是:将待排序序列构造成一个大顶堆,此时,整个序列的最大值就是堆顶的根节点。将其与末尾元素进行交换,此时末尾就为最大值。然后将剩余n-1个元素重新构造成一个堆,这样会得到n个元素的次小值。如此反复执行,便能得到一个有序序列了步骤一 构造初始堆。将给定无序序列构造成一个大顶堆(一般升序采用大顶堆,降序采用小顶堆)。 a.假设给定无序序列结构如下2.此时我们从最后一个非...原创 2018-09-09 13:56:51 · 8226 阅读 · 1 评论 -
大数据之核心算法的思想总结
大数据之基础核心算法总结分而治之思想分析:将一个问题,分解为多个子问题,递归的去解决子问题,最终合并为问题的解 应用场景问题分解为小问题后容易解决 问题可以分解为小问题,即最优子结构 分解后的小问题解可以合并为原问题的解 小问题之间互相独立算法案例二分查找 快速排序 合并排序 大整数乘法 循环赛日程表动态划分算法思想分析:将问题分解为多个子问题(阶段...原创 2018-08-20 16:20:37 · 1422 阅读 · 0 评论 -
数据结构的七大主流排序算法总结之四:希尔排序算法
介绍:希尔排序,也称递减增量排序算法,实质是分组插入排序。由 Donald Shell 于1959年提出。希尔排序是非稳定排序算法。希尔排序的基本思想是:将数组列在一个表中并对列分别进行插入排序,重复这过程,不过每次用更长的列(步长更长了,列数更少了)来进行。最后整个表就只有一列了。将数组转换至表是为了更好地理解这算法,算法本身还是使用数组进行排序。例如,假设有这样一组数[ 13...原创 2018-08-20 15:15:02 · 244 阅读 · 0 评论 -
数据结构的七大主流排序算法总结之三:插入排序算法
介绍:插入排序的工作原理是,对于每个未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。步骤: 从第一个元素开始,该元素可以认为已经被排序 取出下一个元素,在已经排序的元素序列中从后向前扫描 如果被扫描的元素(已排序)大于新元素,将该元素后移一位 重复步骤3,直到找到已排序的元素小于或者等于新元素的位置 将新元素插入到该位置后 ...原创 2018-08-20 15:13:48 · 312 阅读 · 0 评论 -
数据结构的七大主流排序算法总结之二:选择排序算法
介绍:选择排序无疑是最简单直观的排序。它的工作原理如下。步骤: 在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。 再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。 以此类推,直到所有元素均排序完毕。 <span style="font-size:14px;font-weight: normal;">/** *...原创 2018-08-20 15:09:41 · 216 阅读 · 0 评论 -
数据结构的七大主流排序算法总结之一:冒泡算法
介绍:冒泡排序的原理非常简单,它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。步骤: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对第0个到第n-1个数据做同样的工作。这时,最大的数就“浮”到了数组最后的位置上。 针对所有的元素重复以上的步骤,除了最后一个。 持续每次对越来越少的元素重复上面的步骤,直到...原创 2018-08-20 15:07:51 · 340 阅读 · 0 评论 -
递归和迭代模式遍历文件实战
import java.io.File;import java.util.*;public class Filelist { public static void main(String[] args) { // TODO Auto-generated method stub String filePath = "F:\\training\\Vedio"...原创 2018-08-20 15:03:04 · 308 阅读 · 0 评论