
数据结构算法
文章平均质量分 54
虾球xz
光说不练假把式
展开
-
算法学习笔记
算法学习原创 2022-10-06 16:45:44 · 441 阅读 · 3 评论 -
leetcode笔记
leetcode原创 2022-10-06 16:40:54 · 277 阅读 · 0 评论 -
数据结构算法与应用-C++语言描述 stack的应用
main.cpp#include <string>#include <iostream>#include <sstream>#include <algorithm>#include <iterator>using namespace std;//数据结构算法与应用-C++语言描述 stack的应用//线性表一数组//抽象数据类型template<class T>class linearList{pub原创 2021-12-13 22:34:24 · 1685 阅读 · 0 评论 -
数据结构算法与应用-C++语言描述 stack链表的实现
//数据结构算法与应用-C++语言描述 stack链表的实现//链表描述main.cpp#include <iostream>#include <sstream>#include <iterator>using namespace std;//数据结构算法与应用-C++语言描述 chain 单链表//一个线性表的抽象类template <class T>class linearList {public: virtual ~lin原创 2021-12-12 18:25:14 · 449 阅读 · 0 评论 -
数据结构算法与应用-C++语言描述 stack数组的实现
#include <iostream>#include <sstream>#include <algorithm>#include <iterator>//数据结构算法与应用-C++语言描述 stack数组的实现using namespace std;//线性表一数组//抽象数据类型template<class T>class linearList{public: virtual ~linearList() {}原创 2021-12-12 14:26:09 · 464 阅读 · 0 评论 -
数据结构算法与应用-C++语言描述 矩阵
数据结构算法与应用-C++语言描述 chain 矩阵定义和操作一个m x n的矩阵 (matrix ) 是一个m行、n列的表 ,m和n是矩阵的维数 ( dimension )。/*列1 列2 列3 列4行1 7 2 0 9行2 0 1 0 5行3 6 4 2 0行4 8 2 7 3行5 1 4 9 6*///类 matrix//一个rows x cols 的整型矩阵 M 可用如下的二维整数数组来描述//int x[ro原创 2021-12-11 11:25:25 · 2492 阅读 · 0 评论 -
数据结构算法与应用-C++语言描述 chain 单链表2
chain.cpp#include <iostream>#include <sstream>#include <iterator>using namespace std;//数据结构算法与应用-C++语言描述 chain 单链表//一个线性表的抽象类template <class T>class linearList {public: virtual ~linearList(){} //返回true,当且仅当线性表为空 virtu原创 2021-12-10 10:03:53 · 775 阅读 · 0 评论 -
数据结构算法与应用-C++语言描述 chain 单链表 带头节点
chain.cpp//循环链表和头节点//1 ) 把线性表描述成一个单向//循环链表 ( singly linked circular list ) ( 简称循环链表 ),而不是单向链表 ; //2 ) 在链表的前面增加一个节点,称为头节点(header node )。只要将单向链表的尾节点与头节点链接起来,单向//链表就成为循环链表,#include <iostream>#include <sstream>#include <iterator>#inc原创 2021-12-07 20:09:24 · 1054 阅读 · 0 评论 -
数据结构算法与应用-C++语言描述 chain 单链表
chain.cpp#include <iostream>#include <sstream>#include <iterator>using namespace std;//数据结构算法与应用-C++语言描述 chain 单链表//一个线性表的抽象类template <class T>class linearList {public: virtual ~linearList(){} //返回true,当且仅当线性表为空 virtu原创 2021-12-05 22:34:50 · 1847 阅读 · 0 评论 -
数据结构算法与应用-C++语言描述 vectorList
vectorList.cpp#include <exception>#include <iostream>#include <sstream>#include <iterator>#include <algorithm>#include <vector>using namespace std;//一个线性表的抽象类template <class T>class linearList {public原创 2021-12-04 23:32:38 · 245 阅读 · 0 评论 -
数据结构算法与应用-C++语言描述 - arrayList
arrayList#include <iostream>#include <sstream>using namespace std;//数据结构算法与应用-C++语言描述 arrayList//一个线性表的抽象类template <class T>class linearList {public: virtual ~linearList(){} virtual bool empty() const = 0;//返回true,当且仅当线性表为空 v原创 2021-12-04 14:35:54 · 1522 阅读 · 0 评论 -
算法训练营学习笔记2
树的应用树树(Tree)是n (n ≥0)个节点的有限集合,当n =0时,为空树;当n >0时,为非空树。任意一棵非空树,都满足:①有且仅有一个被称为根的节点;②除根节点外的其余节点可分为m (m >0)个互不相交的有限集T 1 , T 2 , …, Tm ,其中每一个集合本身又是一棵树,被称为根的子树(SubTree)一棵树如下图所示。该树除了树根,还有3棵互不相交的子树:T 1 、T 2 、T 3 。该定义是从集合论的角度给出的对树的递归定义,即把树的节点看作一个集合,除了树根,其余节点原创 2021-09-09 08:46:40 · 1765 阅读 · 0 评论 -
算法训练营学习笔记1
算法训练营学习笔记贪心算法心算法总是做出当前最好的选择,期望通过局部最优选择得到全局最优的解决方案。从问题的初始解开始,一步歩地做出当前最好的选择,逐步逼近问题的目标,尽可能得到最优解;贪心本质我们在遇到具体问题时,往往分不清对哪些问题可以用贪心算法,对哪些问题不可以用贪心算法。实际上,如果问题具有两个特性:贪心选择性质和最优子结构性质,则可以用贪心算法。(1)贪心选择性质。贪心选择性质指原问题的整体最优解可以通过一系列局部最优的选择得到。应用同一规则,将原问题变为一个相似的、但规模更小的子问题,原创 2021-09-07 17:29:33 · 3881 阅读 · 0 评论 -
趣学算法学习笔记2
问题 3-6 最好的农场问题描述背景在一场反侵略战争中,农夫 William 团结了全国的农民帮助国王抗击侵略者。战争胜利了,国王决定奖赏给农夫 William 一个大农场。问题国王将其国土划分成 1×1 见方的 A×B 个格子,每个格子用一对整数作为标识。如图 3-6 所示。不过,并非所有的格子都可奖赏给 William,其中一些已经奖赏给别人,另一些在战争中被摧毁。国王仅列出那些可以作为奖品的格子供 William 选择。当然,William 也不能将这些格子全部用来建造他的农场,他只能选择连原创 2021-09-05 13:49:32 · 954 阅读 · 0 评论 -
趣学算法学习笔记1
趣学算法学习笔记问题 0-1 计算逆序数问题描述这个学期 Amy 开始学习一门重要课程——线性代数。学到行列式的时候,每次遇到对给定的序列计算其逆序数,她都觉得是个很闹心的事。所以,她央求她的好朋友 Ray 为她写一段程序,用来解决这样的问题。作为回报,她答应在周末舞会上让 Ray 成为她的伦巴舞舞伴。所谓序列 A 的逆序数,指的是序列中满足 i<j,A[i]>A[j]的所有二元组<i, j>的个数。输入输输入文件包含若干个测试案例。每个案例的第一行仅含一个表示序列中元素个原创 2021-09-04 14:11:27 · 2180 阅读 · 0 评论 -
邓俊辉数据结构学习笔记3-二叉树
二叉树及其表示树有根树从图论的角度看,树等价于连通无环图。因此与一般的图相同,树也由一组项点〈vertex)以及联接与其间的若干条边〈edge) 组成。在计算机科学中,往往还会在此基础上,再指定某一特定顶点,并称之为根 root) 。在指定根节点之后,我们也称之为有根树《rooted tree) 。此时,从程序实现的角度,我们也更多地将项点称作节点 node) 。深度与层次由树的连通性,每一节点与根之间都有一条路径相联,而很据树的无环性,由根通往每个节点的路径必然叭一。因此如图5.1所示,沿每个节原创 2021-08-31 18:08:02 · 1544 阅读 · 0 评论 -
邓俊辉数据结构学习笔记2
列表typedef int Rank; //秩#define ListNodePosi(T) ListNode<T>* //列表节点位置template<typename T>struct ListNode//列表节点模板类(以双向链表形式实现){ // 成员 T data; ListNodePosi(T) pred; ListNodePosi(T) succ;//数值、前驱、后继 // 构造函数 ListNode(){}//针对head原创 2021-08-31 11:26:20 · 711 阅读 · 0 评论 -
邓俊辉数据结构学习笔记1
起泡排序算法void bubblesort1A(int A[], int n) //起泡排序算法(版本1A):0 <= n{ int cmp = 0, swp = 0; bool sorted = false; //整体排序标志,首先假定尚未排序 while (!sorted) //在尚未确认已全局排序之前,逐趟进行扫描交换 { sorted = true;//假定已经排序 for (int i = 1; i < n; i++原创 2021-08-30 16:08:57 · 955 阅读 · 0 评论