信息学
文章平均质量分 95
keng_s
分享见解
展开
-
直击信息本质 - 私货篇
私货篇前言瞎论程序中现实中物理中传送门前言在一系列的文章(排序、数据结构、信息论)中围绕什么是信息开展。而这里就是夹带私货,升华问题,瞎讲。知道了:信息就是消除不确定。知道了:信息获取的三种方式。 已知获取,假设获取,计算获取。知道了:信息降维是简化问题的关键,是提高性能的关键(把一个大问题拆成小问题也是降维)。知道了:信息的浪费,是性能低下的本质原因。知道了:信息的浪费,还会拉高工作量(要写好多代码…)。知道了:知道一个答案需要的信息量。知道了:有的时候获取信息只能靠猜(启发式算法)。原创 2020-06-15 21:03:03 · 320 阅读 · 0 评论 -
直击信息本质 - 信息论
信息论前言定义信息熵例信息分析算法设计图算法原理算法拓展问题变种前言在信息论中,认为信源输出的消息是随机的。即在未收到消息之前,是不能肯定信源到底发送什么样的消息。定义信息熵信息熵的计算公式为式中对数一般取2为底,单位为比特。但是,也可以取其它对数底,采用其它相应的单位,它们间可用换底公式换算。(信息量的计算公式)以上的定义可以简单理解,假设有一个数字值为0-1023之间,总共有1024种情况,那么它的信息量为log2(1024) = 10 bit。如果一个数字的值为0-1之间,那么信原创 2020-06-15 20:25:51 · 1298 阅读 · 1 评论 -
直击信息本质 - 数据结构总结篇
数据结构前言后语传送门前言在数据结构系列文章中讲到了三种基础的数据结构数组、链表、字典。基本也是最常用的三种数据结构。后语1.数组的出现直接原因是因为,物理现实,同时也因为知识、技术体系,只可制造有界且有限的存储实体。而数组的快速寻址,正是建立在这些基本的条件上才得以实现的,这里应用了已知获取(整个存储区域中最小存储单元地址为等差数列,实际上在物理上内存区域是可能断开的,但是这个问题是操作系统或者是硬件需要解决的问题,在程序中可以认为,内存是完全连续的)2.链表解决数组的浪费问题,同时解决了数组增原创 2020-06-10 19:48:31 · 614 阅读 · 1 评论 -
直击信息的本质 - 数据单元
前言:对基本的数据划分做一下定义。存储空间存储数据的区域,区域是连续且有界的。最小存储单位把存储空间均匀划分,得到最小存储单位。下标把最小单元称为一个元素,按照前后循序得到下标,0,1,2,3。...原创 2020-06-10 19:48:05 · 316 阅读 · 0 评论 -
直击信息的本质 - 数组
数组前言:增删查如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入前言:数组指多个连续的元素所构成的集合。增我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计原创 2020-06-10 19:47:35 · 179 阅读 · 0 评论 -
直击信息的本质 - 链表
链表前言数据基本操作增删查改后语前言链表指多个不连续的元素所构成的集合。链表解决了数组的缺陷,同时能提高总空间利用率,但同时也带来了查询开销的增大。伪码:List 为双向链表数据结构,ListData为数据“链”,其中有操作函数removeListData,insertListData,findIndexListData。ListData{ data; next; previous;}List{ start; end; removeListData(listData) {原创 2020-06-10 19:46:51 · 280 阅读 · 0 评论 -
直击信息的本质 - 字典
字典前言数据基本操作增删查改后语传送门前言在数组和链表中,都是根据索引进行的元素访问(index - value),实际上大多数时候是一种key - value 的对应形式,而不是index - value。而字典就是解决这个问题的存在。字典实际上由数组、链表、散列函数,三个部分构成,且和桶排序所使用的思想完全一致。(对这几部分不清楚可以翻到最后通过传送门进行观看)链表伪码:数据基本操作设:“链”的下一个“链”为next,上一个“链”为previous。增例:如上图,要在“链”8的位置插原创 2020-06-10 19:46:13 · 415 阅读 · 0 评论 -
直击信息本质 - 排序总结篇
我们处于一个信息化的时代,而计算机的实质作用其实就是处理数据,获取信息,消除随机,得到确定的答案,消除随机获取信息,从几种排序算法中可以看到有几种途径来消除随机,计算消除,假设消除,已知消除。计算消除由计算机承担,而假设消除和已知消除需要我们人类的努力,也是我们作为一个人在计算机系统中所扮演的角色。其中: 所有排序算法都包含: 计算获取(在运行一个算法的时候,通过计算得到了很多确定的信息) 冒泡排序: 快速排序:假设获取 (假设了数据是完全随机分布的...原创 2020-06-03 02:14:13 · 614 阅读 · 1 评论 -
直击信息的本质 - 桶排序
前言: 桶排序在某种意义上来讲它并不是一个排序算法,它更像一个策略方案,事实上的排序还是由别的排序算法完成,它的步骤分为两部分(1)数据装“桶”,(2)每个"桶"使用其余的排序算法进行排序。计数排序实际上是桶排序的特例情况,桶排序代表的是一般情况。设: 排序数据数组为arr,长度为len,bucketSort为排序入口函数。伪码:getMaxMin(arr,len){ max = arr[0]; min = arr[0]; for(i=1...原创 2020-06-03 00:19:04 · 379 阅读 · 0 评论 -
直击信息的本质 - 计数排序
用排序来直击信息的本质原创 2020-06-03 00:06:52 · 228 阅读 · 0 评论 -
直击信息本质 - 冒泡排序
用排序来直击信息的本质原创 2020-05-29 05:48:59 · 287 阅读 · 0 评论 -
直击信息本质 - 快速排序
用排序来直击信息的本质原创 2020-05-29 05:48:49 · 359 阅读 · 0 评论