
数据结构
文章平均质量分 56
emPoint
每天进步一点点
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
解析:vector 使用erase之后 输出什么
#include "iostream" #include "vector" using namespace std; int main(void) { vector<int>array; array.push_back(100); array.push_back(300); array.push_back(300); ar...原创 2018-06-14 20:47:12 · 1167 阅读 · 0 评论 -
替换空格
题目:请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。题意解读:输入一字符串,将字符串中的空格替换为 %20,因此,需注意,替换后的字符串与原字符串的长度不一致思路:从前往后遍历------目的是找出字符串的真实长度,以及空格的个数 从后往前替换--...原创 2019-06-01 11:34:37 · 309 阅读 · 0 评论 -
漫谈 数组与指针 (C++ 程序讲解)
一.int a[3]={11,22,33};int *p=a;此时 a 为指针,指向数组首元素,即a的值为数组首元素的地址int (*p)[3]=&a;此时 a 为数组名,&a 指向整个数组,即 &a 的值为数组的首地址虽然 a 与 &a 数值一样,但代表的意思则不一样 二. int *p[3] 与 int (*p)[3] 的区别1....原创 2018-10-24 20:25:10 · 247 阅读 · 0 评论 -
用两个栈实现队列
思考:1.什么是栈?2.什么是队列3.如何实现?栈和队列都为特殊的线性表,栈是先进后出,队列是先进先出,所以问题转化为如何使用两个栈实现先进先出 思路:进队列时将元素放到栈1 ,出队列时先将栈2 的元素弹出,再将栈1 的元素放到栈2 中,再弹出 代码:...原创 2018-10-18 18:43:51 · 149 阅读 · 0 评论 -
c++ 实现 二维数组查找
题目:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路:整数t1.数组是否为空2.数组最小的元素比 t 大 或户主最大的元素比 t 小3.二分法查找数组循环每一行,对每一行进行二分查找 代码:class Soluti...原创 2018-10-07 10:49:29 · 1640 阅读 · 0 评论 -
c 和 Python 实现快速排序(优化快速排序)
C:#include <iostream> using namespace std; #define MAXSIZE 9//#define MAXSIZE 5typedef struct{ int r[MAXSIZE+1]; int length;}SqList;void swap(SqList *L, int i ,int j){ ...原创 2018-09-09 12:22:23 · 440 阅读 · 0 评论 -
c 和 Python 实现归并排序 (递归,非递归)
C:#include <iostream> using namespace std; #define MAXSIZE 9typedef struct{ int r[MAXSIZE+1]; int length;}SqList;//递归实现归并排序void Merge(int SR[],int TR[],int i ,int m ,int n)...原创 2018-09-09 12:10:57 · 1519 阅读 · 0 评论 -
c 和 Python 实现堆排序
#include <iostream> using namespace std; #define MAXSIZE 9typedef struct{ int r[MAXSIZE+1]; int length;}SqList;//堆排序 1.构建堆(构建特殊的完全二叉树)void HeapAdjust(SqList *L,int s ,int m)...原创 2018-08-30 10:57:54 · 142 阅读 · 0 评论 -
c 和 Python 实现希尔排序
#include <iostream> using namespace std; #define MAXSIZE 5typedef struct{ int r[MAXSIZE+1]; int length;}SqList;//希尔排序void ShellSort(SqList *L){ int i, j; int increment =...原创 2018-08-30 10:42:25 · 194 阅读 · 0 评论 -
c 和 Python 实现简单选择排序
c:#include <iostream> using namespace std; #define MAXSIZE 10typedef struct{ int r[MAXSIZE+1]; int length;}SqList;void swap(SqList *L, int i ,int j){ int temp =L-> r[i...原创 2018-08-27 16:54:39 · 422 阅读 · 0 评论 -
数据结构错题汇总(持续更新)
------有错请指正!!!------ 1.设栈的初始状态为空,当字符序列a3_作为栈的输入时,输出长度为3的且可以用作C语言标识符的字符串序列有()个解析:首先,栈的顺序是先进后出字符序列为a3_ 1)a入栈,再出栈,然后3入栈,再出栈,—入栈,再出栈 序列是a3_ 2)a入栈...原创 2018-06-25 19:51:39 · 4412 阅读 · 0 评论 -
线性结构定义
线性结构应满足:有且只有一个根结点与每个结点最多有一个前件,也最多有一个后件原创 2018-06-25 19:37:53 · 2039 阅读 · 0 评论 -
串(字符串)--数据结构
定义:串是由零个多个字符组成的有限序列,又叫字符串一般形式: s=‘a1a2a3 … am’,其中s是串的名称,用引号括起来的字符序列是串的值notice1: 引号并不为串的内容字符串中的 值可以是字母,数字或其他字符字符串长度为m,由定义可知,m必须为有限值notice2:空字符串和空格串不是同一个东西例: 空字符串表示为 ‘’或‘''' 空格串表示为‘ ’...原创 2018-06-15 19:58:06 · 512 阅读 · 0 评论 -
栈与递归
栈:限定仅在表尾进行插入和删除操作的线性表递归:直接调用自己或通过一系列的调用语句间接地调用自己的函数,称做递归函数当运行程序,系统会为该程序分配运行空间,存储空间(存储变量等),而存储空间的数据结构类型有很多种随着编程的规范,存储不同类型数据的数据结构也有规范例如:当你调用一个函数时,系统会将这个函数进行入栈操作,在入栈之前,通常需要完成三件事。 1、将所有的实参、返回地址等信息传递给被调函数...原创 2018-06-23 16:36:06 · 846 阅读 · 0 评论 -
循环队列及关于取余数的见解
1.若你想将一个数p归到 0- n 的范围(n!= 0 ,1)只需 p%n例:归到0- 9 95%9=5归到0-594%5=4应用循环队列满的条件(rear+1)%QueueSize==front原创 2018-06-14 20:45:01 · 5558 阅读 · 2 评论 -
递归
任何一个递归过程都可以转换成非递归过程原创 2018-06-14 20:54:29 · 216 阅读 · 0 评论 -
二叉树的建立,遍历以及销毁
#include <iostream> #include <string>using namespace std; struct node{ char da; node *lchild; node *rchild; };//前序遍历void preorder(node* &re){ if(re==NULL) { retu...原创 2019-07-15 21:49:34 · 368 阅读 · 0 评论