数据结构与算法 从入门到头秃
冲!
浪矢清
吉林大学渣一只(~ ̄▽ ̄)~
展开
-
C++ 二叉树的遍历 前序 中序 后序 递归&非递归 层次
#include <iostream>#include <string>#include <queue>#include <stack>#include <math.h>using namespace std;typedef int datatype;class Node {public: datatype val; Node* left; Node* right; Node(datatype val) { th.原创 2021-05-20 15:01:31 · 349 阅读 · 0 评论 -
Java 堆栈(Stack)的简单实现 数组方式 链表方式
Stack.javapackage LinearList.Stack;public abstract class Stack<T> { public abstract boolean empty(); public abstract T peek(); public abstract T pop(); public abstract void push(T obj); public abstract int search(T obj);原创 2021-05-15 15:21:00 · 378 阅读 · 0 评论 -
C++ 堆栈(Stack)实现 数组方式 链表方式 类模板
#include <iostream>#include <string.h>using namespace std;//抽象模板类 template <class T>class Stack {public: virtual void push(T const& obj) = 0; virtual void pop() = 0; virtual T top() const = 0; virtual bool empty() = 0; vi.原创 2021-05-15 13:53:10 · 501 阅读 · 0 评论 -
C++去重容器 unordered_set 用法概述
unordered_set构造函数unordered_set<int> set1; //创建空setunordered_set<int> set2(set1); //拷贝构造unordered_set<int> set3(set1.begin(), set1.end()); //迭代器构造unordered_set<int> set4(arr,arr+5); //数组构造unordered_set<int> set5原创 2020-10-10 18:54:21 · 7405 阅读 · 0 评论 -
一文搞定常见的链表问题
相爱相杀好基友——数组与链表作为线性表的两种存储方式 —— 链表和数组,这对相爱相杀的好基友有着各自的优缺点。接下来,我们梳理一下这两种方式。数组,所有元素都连续的存储于一段内存中,且每个元素占用的内存大小相同。这使得数组具备了通过下标快速访问数据的能力。但连续存储的缺点也很明显,增加容量,增删元素的成本很高,时间复杂度均为 O(n)。增加数组容量需要先申请一块新的内存,然后复制原有的元素。如果需要的话,可能还要删除原先的内存。删除元素时需要移动被删除元素之后的所有元素以保证所有元素是连转载 2020-10-10 10:24:33 · 359 阅读 · 0 评论