数据结构

树的遍历之中序遍历二叉树

树的遍历之中序遍历二叉树1.简介依旧是下面的这三句话:先序遍历:根左右中序遍历:左根右后序遍历:左右根      &……

C++STL之Queue容器

C++STL之Queue容器1.再谈队列回顾一下之前所学的队列,队列和栈不同,队列是一种先进先出的数据结构,STL的队列内容极其重要,虽然内容较少但是请务必掌握,STL的队列是快速构建搜索算法以及相关的数论图论的状态存储的基础。……

理解复杂度概念

理解复杂度概念1.时间空间复杂度定义1)时间复杂度时间复杂度表示一个程序运行所需要的时间,其具体需要在机器环境中才能得到具体的值,但我们一般并不需要得到详细的值,只是需要比较快慢的区别即可,为此,我们需要引入时间频……

栈的定义和特点

栈的定义和特点数据结构的重要部分,栈,栈是OI中常用的一种线性数据结构,请注意,本文主要讲的是栈这种数据结构,而非程序运行时的系统栈/栈空间,大家一定要弄清晰,别混淆了。栈的定义和特点栈(stack)是一个特殊的线……

C++STL之Set容器

C++STL之Set容器1.简介Set(集合)属于关联式容器,也是STL中最实用的容器,关联式容器依据特定的排序准则,自动为其元素排序。Set集合的底层使用一颗红黑树(可能读者对此不太了解,等但学到树论与图论的章节的时候就会……

栈数组与栈链表C语言代码实现

栈数组与栈链表C语言代码实现栈数组代码实现:#include<stdio.h>#include<stdlib.h>#include<string.h&……

竞赛学习路线推荐(算法数据结构)

竞赛学习路线推荐(算法数据结构)阅读这一节之前,请确认你熟悉的语言,无论C、C++、java都已经很熟练运用,不存在语法问题了,否则参考本节的学习路线会让你变得着急和打退堂鼓对于已经掌握一种语言可以参赛之后,算法和数据结构的学习,笔……

编程预备

编程预备两个必备的函数知识(其均来自于stdlib.h库中)1.Malloc函数malloc()函数在堆中申请分配一个大小为size个字节的连续内存空间,若成功分配,则返回一个指向所分配空间起始地址的指针,否……

数学基础

数学基础在开始我们数据结构的教程之前,你需要具备以下数学基础知识,这些知识可能不会马上体现在计算机编程中,但是随着学习的深入,这些知识愈发愈用的平凡,于其遇到了再的碎片化,不如我们单独开出一节来单独学习这些数……