
数据结构学习
基本算法学习
如椽大笔_S686
这个作者很懒,什么都没留下…
展开
-
C语言程序设计第七周第一题 多项式加法(5分)
附测试点分析。测试点1:例题提供的测试点把其中一项改成负系数即可,如2x6+3x5-12x3+6x+20 //注意负号测试点二三题目已提供暗示测试点四:注意幂为1的项系数是1,检查是否忘记限制该项系数为1情况下的输出格式控制。题目设计者降低了测试点难度,在两个地方未设置测试点↓1.不会出现-x项,唯一存在负项的是测试点一,且系数小于-1例如:-5x2············...原创 2020-04-16 15:27:33 · 672 阅读 · 0 评论 -
小白也能看懂的平衡二叉搜索树AVL-TREE教程
一.二叉搜索树在懂平衡二叉搜索树之前,必须要懂得二叉搜索树。其实二叉搜索树的概念很好理解,普通二叉树可以随便存储数据如图1可见上图就是普通的二叉树,除了必须满足每个节点至多有两个孩子节点外,没有任何限制,数据可以随意存储。而二叉搜索树就是在普通二叉树的基础上增加了一点要求:左孩子存储元素必须小于根节点元素,右孩子存储元素必须大于或等于根节点元素。(注:部分教材也称为二叉排序树)所以按...原创 2020-02-19 14:43:22 · 266 阅读 · 0 评论 -
二分查找学习
二分查找原创 2019-11-14 19:19:56 · 312 阅读 · 0 评论 -
堆与哈弗曼
哈弗曼编码,哈弗曼树用来解决编码的方式以达到最佳效率。哈弗曼提供的构造方法即每次从给定序列中选取两个最小元素,然后将这两个元素构成一个结点 的左右孩子,然后将父节点再插回原序列。经过循环构造,最终形成最优哈弗曼树。问题就是如何确定每次选取两个最小元素的方式,很显然最容易想到的就是每次插回去的时候再进行排序,但是是不是有一种方式可以在插回去的时候自动排序呢? 这时候就是堆该派上用场的时候了...原创 2019-12-06 18:50:20 · 145 阅读 · 0 评论 -
堆学习笔记
堆是用来处理优先队列的一种方式。优先队列是指所有存储的信息以某种特定的排序规则排序。一般的队列是按照来的时间先后排序,而堆是某种特定序列,比如来的年龄最大的站在最前面,或者退伍军人站在最前面,这种指定排序规则的队列就是优先队列。优先队列的想法很简单,实现方式也很简单,关键的是如何存储,即找一种存储效率高的数据结构才存储堆。树是堆的最优存储方式,而且是顺序存储的完全二叉树。递归定义,...原创 2019-12-06 12:53:52 · 168 阅读 · 0 评论 -
04-树4 是否同一棵二叉搜索树 (25 分)
给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。输入格式:输入包含若干组测试数据。每组数据的第1行给出两个正整数N (≤10)和L,分别是每个序列插入元素的个数和需要检查的...原创 2019-11-27 20:10:31 · 150 阅读 · 0 评论 -
03-树3 Tree Traversals Again (25 分)
今天在学习数据结构,刷作业时遇到这个问题,题目隐含条件挖掘出来以后就是根据先序遍历和中序遍历,然后让你推出后序遍历的结果。一开始我就想到可以用循环,但是写着写着发现有点复杂,为什么不用递归呢?递归肯定是可以,但是我遇到一个问题,就是思路感觉是对的,但是结果总是不对,后来我换成自己构造的简单测试案例然后一步一步跑,最后发现是由于函数使用的是值传递,在每次递归里面对传进去的东西修改以后,无法传出来...原创 2019-11-27 12:25:04 · 113 阅读 · 0 评论 -
03-树2 List Leaves (25 分)
这个题写过 了以后提交,一次过,还是蛮开心的。主要有两个地方需要注意:一是找到根节点。二是如何确定所在层数。从左到右倒是不难,毕竟可以递归进入左子树。可能是我太菜了吧,代码写了50行。。。#include<vector>#include<iostream>using namespace std;vector<vector<int> >...原创 2019-11-26 21:04:00 · 106 阅读 · 0 评论 -
01-复杂度2 Maximum Subsequence Sum (25 分)
之前一直觉得这个题简单,但是今天再写的时候遇到了一个小障碍就是边界测试问题,实际上还是我疏忽了,导致出错,但还是为排除错误提供了一点思路。错误代码:#include<iostream>#include<vector>using namespace std;int main() { int N, value, tmpmax = -1, flagmax, tmp...原创 2019-11-26 08:48:39 · 88 阅读 · 0 评论