杨伟彬
 数据结构——堆排序
1. 堆排序原理 堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。 n个元素的序列\({ k_1,k_2
杨伟彬
 数据结构——希尔排序
1. 希尔排序原理 希尔排序(Shell’s Sort)于1959年提出的一种排序算法。希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序,同时该算法是冲破\(O(n^2)\
8-毛俊杰
 备战蓝桥杯-----贪心算法基础知识(专题一)
贪心算法贪心算法顾名思义就是用计算机来模拟一个 “贪心” 的人做出决策的过程。这个人每一步行动总是按某种指标选取最优的操作,他总是 只看眼前,并不考虑以后可能造成的影响 。可想而知,并不是所有的时候贪心法都能获得最优
朱应丽
 Java网络编程之使用套接字(Socket)进行通信
一、 套接字(Scoket)的引入 Java支持基于流的通信和基于包的通信。基于流的通信使用传输控制协议(TCP)进行数据传输,而基于包的通信使用用户数据报协议(UDP)。因为TCP协议能够发现丢失的传输信息并重新发送,所以
3-范天祚
 数据结构与传统算法总结
复制到这里格式就乱了,去网址看吧不止是c,但是懒的找封面了链接这只是初步汇总,过一段时间再来更新
杨伟彬
 数据结构——线性表顺序存储
线性表的顺序存储 线性表是最常用且最简单的一种线性结构。线性结构的特点:(1) 存在唯一的一个被称作“第一个”的数据元素。(2) 存在唯一的一个被称作“最后一个”的数据元
杨伟彬
 数据结构——二叉树的存储结构举例
1. 二叉树的定义定义: 二叉树是 n (n≥0) 个结点的有限集,它或者是空集 (n = 0),或者由一个根结点及两棵互不相交的分别称作这个根的左子树和右子树的二叉树组成。特点: ①每个结点最
杨伟彬
 数据结构——图的应用
1. 图的应用 在数据结构中图的应用很广泛,本文主要从以下四个方面介绍: ①最小生成树:给定一个无向网络,在该网的所有生成树中,使得各边权数之和最小的那棵生成树称为该网的最小生成树,也叫最小代价生成树。 ②拓扑排序:由某个
杨伟彬
 数据结构——图的遍历
1. 图的遍历定义 从图的任意指定顶点出发,依照某种规则去访问图中所有顶点,且每个顶点仅被访问一次,这一过程叫做图的遍历。 图的遍历按照深度优先和广度优先规则去实施,通常有深度优先遍历法(Depth_First Se
渣男厂长在线撩妹儿
 实现一个自己的编程语言——词法分析
首先我们知道我们所有的代码都放在了一个文件内,so,第一件事我们要读入文件并进行词法分析,分析完成之后形成的token流会被接下来的语法分析器消费掉,典型的生产者消费者模型。一个Tokenizer 组成首先需要介绍一种缓存读文件的方法,双缓
渣男厂长在线撩妹儿
 写一个自己的编程语言——语法分析
回归一下之前提到的概念,编译器的工作流程,首先将文件按照流的方式依次读入内存,并根据一个词法状态机生成一个Token流,那么Token接下来该怎么被处理呢?我们可以参考一下语言的规律。我们的文件读入流是为了读入字符,字符呢其实就是一个语言的
7-李建涛
 Java — 静态绑定和动态绑定
Java的引用变量有两个类型,一个是编译时类型,一个是运行时类型,编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定。如果编译时类型和运行时类型不一致,会出现所谓的多态。(即Perso
渣男厂长在线撩妹儿
 Rust杂七杂八整理
开始发布系列文章,写一个自己的编程语言,也是最近无聊,用Rust来实现,当然用java C/CPP go 之类的实现简直无压力,so,我选择了rust,反正以后的工作也是跟这个语言过不去,那么就入个门写个解释器玩玩。最后一学期了,本学期天天
渣男厂长在线撩妹儿
 实现一个自己的编程语言—— 有限自动状态机
等等,我们不是在实现一个自己语言的解释器吗,为什么说起来了有限自动状态机呢?首先我们需要知道对一个语言解释器来说,应该由前端和后端两部分组成,这里的前端就是将文件读入内存并转化成Token流举个例子func say_hello(){ int
渣男厂长在线撩妹儿
 实现一个自己的编程语言——起步
首先我们准备实现的编程语言长啥样# 这是一个注释 println("Hello World!"); println(2 + 3 * 4); # 使用lambda作为声明函数的关键字 fib = lambda (n) if n < 2
渣男厂长在线撩妹儿
 实现一个自己的编程语言——准备
实现一个自己的编程语言,应该作为大三或者大二下学期学生必备的实验,毕竟又不用做到工业级别实现。也是掌握I/O和字符串和各种数据结构的一种手段。主要是最近被分配干自研数据库的SQLParser部分,也就是解析SQL语句生成执行计划的工作,捎带
渣男厂长在线撩妹儿
 工程排序
Engineering a Sort Function 论文解读在从美团实习离职前夕,参加了一个TiDB的学习组织,接手的第一篇paper就是这个工程化排序。主要是研究快排的算法优化思路和Unix 系统中的Qsort设计@雪梨教育全体工作人
2-马增来
 链栈的表示及基本操作的实现
写了一点链栈的基本操作,第一次发文,如发现错误之处请大家及时指正。// 补充:链栈的基本操作 #include <stdio.h> #include <stdlib.h> typedef int ElemType;
7-李建涛
 js数组
声明:数组声明的三种方式:1. var arr = new Array();(声明一个空数组对象) arr[0]="abc";2. var arr = new Array(5);(声明数组并初始化长度,注意数组的长
刘秀梅
 WEB开发(二)—— 函数
(一)函数三要素函数的三要素为函数名、参数(形参,实参),返回值。(二)函数定义与调用函数定义的关键字为function,不能省略,也不要能简写。定义函数有3种形式,相应的调用形式有2种。1.函数声明形式 注: 不需要在函数声明的后面添加一