09 2020 档案
摘要:931A 题目 朋友聚会 链接:https://codeforces.com/problemset/problem/931/A 分析 俩个数间隔性的相互靠近,记录俩个数相等时候的step数。 代码实现 1 #include<iostream> 2 #include<algorithm> 3 usin
阅读全文
摘要:STL基本概念 STL(Standard Template Library,标准模板库) STL 从广义上分为: 容器(container) 算法(algorithm) 迭代器(iterator) 容器和算法之间通过迭代器进行无缝连接。 STL 几乎所有的代码都采用了模板类或者模板函数 其中容器就是
阅读全文
摘要:141A 题目 可笑的笑话 链接:https://codeforces.com/problemset/problem/141/A 分析 读完这道题我第一反应就是用map集合来做,因为涉及到了字符数字个数的比较,让我联想到了键值对,先统计前两行字母,在创建一个map存放堆中字母个数,然后再比较俩个ma
阅读全文
摘要:虽然我的分数超过了老师要求的最低分数,但是我自己对我的分数很不满意,远远没有达到理想的成绩。 对于这次课堂测试我做了一下几点失利分析: 1.复习和准备工作没有到位,放了暑假之后,首先自学了一点python语法和基础知识,然后用python做了一个可视化的系统,然后就是大数据的学习,从Linux基础到
阅读全文
摘要:题目信息 题目源:codeforce,链接:https://codeforces.com/problemset/problem/339/A 涉及的算法及数据结构:贪心,排序,字符串 需求分析 这道题目很简单,第一反应就是将数存到容器,排序后在输出。没有什么复杂的算法设计。 总结 通过这道算法题对ve
阅读全文
摘要:散列表 概念 散列表,又称杂凑表,是一种十分实用的查找技术,具有极高的查找效率。其基本思想是根据 关键码值(查找码)与表项存储位置的映射关系,进行高效、精确的查找。查找效率与散列函数的 计算复杂度、冲突解决方案的使用有直接的关系。散列查找是根据关键码(查找码)与表项存储位 置的映射关系,进行高效、精
阅读全文
摘要:二分法查找 概念 二分法查找又称折半查找,它是一种效率较高的查找方法。二分法查找要求线性表是有序表, 即表中结点按关键字有序,并且要用向量作为表的存储结构。二分法也叫作折半查找法,我感觉这个算法是最简单的一个算法没有之一,理解起来也很容易。 要点 二分法查找只适用顺序存储结构。为保持表的有序性,在顺
阅读全文
摘要:图 要点 重点在于掌握图的基本概念和存储,以及求关键路径、最短路径、拓扑排序的方法。 概念 图G由两个集合V和E组成,记为G=(V,E),其中V是顶点的有穷非空集合,E是V中顶点偶对 (称为边)的有穷集合。通常,也将图G的顶点集和边集分别记为V(G)和E(G)。E(G)可以是 空集。若E(G)为空,
阅读全文
摘要:二叉树的翻转 题目来源:https://leetcode-cn.com/problems/invert-binary-tree/ 要求: 分析:判断如果此节点为空或者此节点的左右孩子都为空,那么返回此节点,否则交换此节点的左右孩子,依次递归实现此节点的左孩子和有孩子。 代码实现: 1 void sw
阅读全文
摘要:二叉树 概念 二叉树(Binary tree)是树形结构的一个重要类型。许多实际问题抽象出来的数据结构往往是二叉树形式,即使是一般的树也能简单地转换为二叉树,而且二叉树的存储结构及其算法都较为简单,因此二叉树显得特别重要。二叉树特点是每个结点最多只能有两棵子树,且有左右之分。 要点 二叉树的创建和遍
阅读全文
摘要:压缩与解压文件 题目要求 实现一个基于哈夫曼树的文件压缩程序和文件解压程序。 基本要求: (1) 要求压缩程序读入源文件,分析每种字符的频度,然后建立相应的哈夫曼树,再求出相应哈夫曼编码,根据编码对源文件进行压缩,得到源文件对应的压缩文件。 (2) 解压程序读入压缩文件,根据相应的哈夫曼编码解压还原
阅读全文
摘要:Vector容器 前言 STL大体分为六大组件,分别是:容器、算法、迭代器、仿函数、适配器(配接器)、空间配置器。 STL容器就是将运用最广泛的一些数据结构实现出来 常用的数据结构:数组, 链表,树, 栈, 队列, 集合, 映射表 等 概念 vector数据结构和数组非常相似,也称为单端数组。 ve
阅读全文
摘要:插入排序 概念 插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。 这里我们采用顺序表的存储方式来存储数据 具体实现步骤 将待排序序列第一个元素看做一个有序序列,把第二个元素到最
阅读全文
摘要:循环队列 概念 队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。允许插入的一端为队尾(入队),允许删除(出队)的一端为队头。 要点 顺序存储的队列是采用数组来实现的,但由于数组是静态的,在队列的出队和入队的操作下会出现整个队列后移逐渐占用下标加大位置而下标较小位置为空的
阅读全文
摘要:链式栈 优点 链栈的建立是基于链表而不是数组。基于链表的栈相对于基于数组的栈提供了两个优点: 不需要指定栈的起始大小。链栈只需要从一个空的链表开始,然后每次压入一个值时即扩展一个结点; 要系统具有足够的可用内存,链栈将永远不会满。 指针注意事项 链式栈的结构体定义如下: 1 typedef stru
阅读全文
摘要:顺序表 概念 顺序表是指用一组地址连续的存储单元依次存储各个元素,使得在逻辑结构上相邻的数据元素存储在相邻的物理存储单元中的线性表。 代码实现 1 public class SequentialList { 2 private int length; 3 private int[] List; 4
阅读全文
摘要:数据仓库 基本概念 英文名称为Data Warehouse,可简写为DW或DWH。数据仓库的目的是构建面向分析的集成化 数据环境,为企业提供决策支持(Decision Support)。 数据仓库是存数据的,企业的各种数据往里面存,主要目的是为了分析有效数据,后续会基 于它产出供分析挖掘的数据,或者
阅读全文

浙公网安备 33010602011771号