小结
Panda_3687
一两句话说不请我
展开
-
寒假集训之链表小结
使用链表首先建立节点的结构体:struct node{ int data; struct node *next;};链表的建立有两种一种是顺序建立一种是逆序建立,两者相比较而言逆序更简单一些,他比顺序少设置一个指针下面是逆序建立链表的函数struct node *creat(int len)//逆序建立链表{ struct node *head,*p;...原创 2019-01-23 20:46:38 · 287 阅读 · 0 评论 -
二叉树查找树和平衡二叉树小结
排序二叉树:(1).每个节点中包含有一个关键值 (2).任意一个节点的左子树(如果存在的话)的关键值小于该节点的关键值 (3).任意一个节点的右子树(如果存在的话)的关键值大于该节点的关键值。左边的节点全部大于右边的节点。建立排序二叉树;输入一组数据,将该组数据建立排序二叉树。struct node *creat(struct node *root, int x){ if(ro...原创 2019-03-04 19:56:11 · 293 阅读 · 0 评论 -
寒假集训小结之二叉树
有关二叉树的基本操作:1、初始化一个二叉树;2,、建立一个二叉树;3、在二叉树中建立一个节点;4、在二叉树中删除一个节点;5、在二叉树中查找一个节点;6、二叉树的先序遍历;7、二叉树的中序遍历;8、二叉树的后序遍历;9、二叉树的层序遍历;10、销毁二叉树;等等二叉树的重要性质:性质一:二叉树的第i层上之多有pow(2,i-1)个节点;性质二:深度...原创 2019-03-04 19:41:56 · 252 阅读 · 0 评论 -
动态规划扩展:背包小结
01背包是基础的背包问题,即容量为v的背包, 给你n件物品, 每件物品只有一件, 每件物品所占体积vi, 价值wi已知,求此背包所能容纳的前提下,让在其中物品价值最大。此问题状态方程为发f[i][v] = max(f[i-1][v], f[i-1][v-vi[i]]+wi[i]), 即前i件物品放入容积为v的背包中得到的最大价值。因为每件物品只有一件,所以第i件物品有两种选择, 即放或不放...转载 2019-02-15 11:06:39 · 297 阅读 · 0 评论 -
寒假集训小结之栈的应用
栈就像一个死胡同,先进的后出后进的先出,主要是这样的一个结构。关于栈的应用大多数题都是栈处于一种动态的变化之中,并不是一层不变的,一直有进栈的同时也有出栈的。例一:括号匹配#include<bits/stdc++.h>using namespace std;int main(){ char x[60],y[60]; int i,len,fla...原创 2019-02-21 15:33:01 · 159 阅读 · 0 评论 -
寒假集训小结之顺序表
顺序表其实就两大类:一种就是带下标的数组,另一种就是链式的链表。元素位置互换之逆置算法(数据改进):顺序表应用4-2:元素位置互换之逆置算法(数据改进)Time Limit: 80 ms Memory Limit: 600 KiBSubmit StatisticProblem Description一个长度为len(1<=len<=1000000)的顺序表,数据...原创 2019-02-02 18:56:08 · 265 阅读 · 0 评论 -
寒假集训小结之动态规划
数学三角形问题:数字三角形问题Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit StatisticProblem Description给定一个由n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形的顶至底的一条路径,使该路径经过的数字总和最大。 对于给定的由n行数字组成的数字三角形,计算从三角形的顶至底的路...原创 2019-02-21 15:31:44 · 133 阅读 · 0 评论 -
寒假集训之贪心小结
贪心和动态规划一样都是用来解决最优解问题的。贪心算法就是一种在每一步选择中都采取当前状态最好或最优的选择,从而希望得到结果是最好或最优的解法。因为每一步都要得到最优解所以看上去很贪。在动态规划的算法中,每步往往依赖于相关子问题。正是这种差别,动态规划常常通过自底向上的方式解决子问题,贪心往往通过自顶向下的方式解决就像下面这个问题只能用动态规划来解数字三角形问题Time Limit: 1...原创 2019-01-24 20:35:34 · 240 阅读 · 0 评论 -
寒假集训之递归小结
在程设1中也接触过递归,到底什么是递归,简单来说就是在函数中自己调用自己。它通常把一个大问题简单化,转化成一个个的小问题。注意:在函数中必须有直接或间接调用自身的语句。 在使用递归策略时,必须有一个吗,明确的递归结束条件,称为递归递归出口。求阶乘(n!):int Factorial(int n){ if(n===0)return 1; return n*Fact...原创 2019-01-24 11:27:56 · 174 阅读 · 0 评论 -
寒假集训之递推小结
递推就是每个数据和他前面的若干数据项(或后面的若干数据项)有一定的关联关系;一般有以下几种关系;简单的Hanoi塔问题:递推关系式Fn=2*F(n-1)+1;(n>=2)程序如下:#include <stdio.h>#include <stdlib.h>#define N 64int main(){ int i,n; long...原创 2019-01-23 21:14:35 · 195 阅读 · 0 评论 -
二叉树查找树和平衡二叉树小结
排序二叉树:(1).每个节点中包含有一个关键值 (2).任意一个节点的左子树(如果存在的话)的关键值小于该节点的关键值 (3).任意一个节点的右子树(如果存在的话)的关键值大于该节点的关键值。左边的节点全部大于右边的节点。建立排序二叉树;输入一组数据,将该组数据建立排序二叉树。struct node *creat(struct node *root, int x){ if...原创 2019-03-04 20:22:39 · 254 阅读 · 0 评论