
数据结构
文章平均质量分 78
李恩泽
敬畏耶和华是智慧的开端;认识至圣者便是聪明(箴九10)。我不是依靠自己的小聪明,我要专心仰赖耶和华,做一个技术的极客!
展开
-
两个栈实现队列
一,STL模板库中栈的介绍 先看一段代码:#include #include using namespace std;int main(){stack sc; //建立int型栈for(int i = 0; i < 10l; ++i)sc.push(i); //push入栈操作while( !sc.empty()) //栈为空的时候返原创 2017-02-28 16:30:49 · 185 阅读 · 0 评论 -
机器人运动范围--回溯算法
/*题目:地上有个m行n列的方格。一个机器人从坐标(0, 0)的格子开始移动,它每一次可以向左、右、上、下移动一格,但不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格(35, 37),因为3 + 5 + 3 + 7 = 18.但它不能进入方格(35, 38),因为3 + 5 + 3 + 8 = 19.请问该机器人能够达到多少格子?例如我们输入的K =原创 2017-03-02 22:22:04 · 843 阅读 · 0 评论 -
约瑟夫环应用问题
/*约瑟夫环是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,从1数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。写程序实现上述过程。*/#include#include#includeusing namespace std;struct原创 2017-02-24 16:44:18 · 1021 阅读 · 0 评论 -
面试题--调整数组顺序
一:调整数组顺序使得奇数位于偶数前面 题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分。首先这个题目只要求把奇数放前面,偶数放后面,所以我们不需要关注其他太多的因素,我们只需要给两个指针,让他们一个指向最后一个元素,这个指针只向前移动,一个指向第一个元素,这个指针只向后移动,然后让这两个指针动起来就好了,让前面的指针原创 2017-03-03 18:41:57 · 1408 阅读 · 0 评论 -
C++stack模板类
stack 介绍栈是一种容器适配器,特别为后入先出而设计的一种(LIFO ),那种数据被插入,然后再容器末端取出栈实现了容器适配器,这是用了一个封装了的类作为他的特定容器,提供了一组成员函数去访问他的元素,元素从特定的容器,也就是堆栈的头取出袁术。这个基础的容器可能是任何标准的容器类,和一些其他特殊设计的模板类,唯一的要求就是要支持一下的操作[cpp]原创 2017-03-04 10:49:15 · 1696 阅读 · 0 评论 -
N皇后问题的非递归回溯和递归回溯
一、问题描述 一个n*n的棋盘,要在上面放n个皇后。规则:两个皇后之间如果是同列、同行、同对角线它们会互相攻击。也就是说:棋盘上的任意两个皇后皇后不能为同列、同行、同对角线。二、问题分析 回溯法是一种通用的搜索算法,几乎可以用于求解任何可计算的问题。算法的执行过程就像是在迷宫中搜索一条通往出口的路线,总是沿着某一原创 2017-02-26 16:14:53 · 987 阅读 · 0 评论 -
循环队列和链式结构队列
一、循环队列的基础知识1,循环队列有几个参数需要确定: 有两个参数,front和rear2,循环队列各个参数的含义(1)队列初始化时,front和rear值都为零;(2)当队列不为空时,front指向队列的第一个元素,rear指向队列最后一个元素的下一个位置;(3)当队列为空时,front与rear的值相等,但不一定为零;3.循环队列入队的原创 2017-02-27 13:22:04 · 3031 阅读 · 0 评论