自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 C++实现的线索二叉树

线索二叉树的概念就不赘述了,最核心的定义就是:结构体中左右标志位的选取,本文中以ltag表示左节点,当ltag为false时,放置左孩子,true时放置前驱节点指针,同理,以rtag表示左节点,当rtag为false时,放置右孩子,true时放置后继节点指针。以下代码中有详细注释~????(不过线索二叉树真的好难懂鸭)typedef struct BiTreeNode{ char data; BiTreeNode *lchild; BiTreeNode *rchild; bool ltag

2020-08-24 23:52:56 338 2

原创 KMP算法

写在前面 KMP真的好难懂 ???? 首先默认暴力求解咱都会,现在来水水KMP的这么一个步骤。首先,对字符串的匹配来说,BF求解时间复杂度太高,所以有三位大牛弄出了KMP算法。以下通过我的理解来说一说KMP。假设主串的长度为M,子串的长度为N,现在要达到的目的是在主串M中找到N所在的对应的子串下标,如果没有就返回。KMP的核心是是针对子串,防止重复回溯,提高效率,因此对应子串中有一个Next数组,数组存放的元素为,当前下标j处子串失配时,下次从子串的next[j]下标处,开始重新匹配。这是为啥呢,举

2020-08-17 23:34:55 129

原创 C++递归----汉诺塔、折半查找

递归 C++前言一、倒序实现字符串二、汉诺塔三、递归实现数组的折半查找-默认升序前言递归能解决好多复杂的问题 刚刚看到递归的部分 有几个小例子,记录下来????有倒序输出字符,汉诺塔摆放方式、折半查找数组(升序)等三个例子一、倒序实现字符串说明:用户输入字符串 以#结束,结果得到的是倒序输出。void myPrint()//倒序输出 用户输入的字符串{ char a; scanf_s("%c", &a,128);//C语言原型中的scanf函数 //scanf_s() 的功能

2020-08-16 13:07:12 146

原创 C++实现的队列--非STL

啊哈~我又来啦C++实现的队列 我发现指针 真的难 一不小心 就搞错 类模板 也真的难 一不小心 就忘记惹???? 还能怎样呢!艾玛 今天又是有进步的一天呢!(遁。。。)//队列template<typename T>class Queue;//声明一下 让好基友Queue可以访问NODE里的private成员template<typename T>class NODE{public: friend void Queue<T>::Insert(T e

2020-08-15 21:31:03 193

原创 逆波兰表达式原理及C++实现

1. 中缀表达式转后缀表达式 2. 逆波兰的原理 3. 上述的实现

2020-08-15 13:22:15 1558

原创 C++实现的栈--非STL

栈的实现包括:动态扩容、删除、遍历、插入元素????模板类 整就完事了//栈template<typename T>class Stack{public: Stack() { this->Maxsize = 2; this->base = new T[Maxsize];//分配内存 top = base; }; ~Stack() { this->Maxsize = 0; if (this->base!=NULL) {

2020-08-14 11:28:20 407

原创 双向循环链表的前插 后插 前删 后删

心累 好复杂 我真的学得会么????????????我能坚持几天 嘤嘤嘤????????????lay了双向链表插来删去真的好可怕。。我哭了 我没装????????????//双向循环链表struct DNode{ int data; DNode *next; DNode *prev;};struct DCircleList{ DNode* Head;};void InitDCircleList(DCircleList *L){ //DNode *n; DNode *n

2020-08-13 21:25:36 587

原创 魔术师发牌 发发发~

约瑟夫环的变种 就是以约瑟夫的方式往里面插牌 还怪难理解的 emmm做一简单记录????void DispatchCard(Linklist *L){ int count = 1; Node *CurrNode = new Node(); CurrNode = L->head; CurrNode->data = 1; while (count< GetCircleLength(*L)) { count++; int move = 0; while (move&l

2020-08-13 18:23:07 119

原创 循环链表-约瑟夫环

一直在跟着小甲鱼学习,然后讲到了约瑟夫环的问题,具体问题就不描述了,贴一下自己写的代码 虽然很辣鸡 但是能跑????看见有用递归方法做的,还没有学到递归,争取早日能mark递归的方法把!!!//以下为约瑟夫主函数void Josef(Linklist *L){ Node *CurrNode = new Node(); CurrNode = L->head; int count = 1; while (GetCircleLength(*L)>2) { if (count%3=

2020-08-13 16:21:21 87

原创 我的数据结构之路漫漫啊啊啊啊啊啊啊

写在秋招之前~开始学数据结构 不知道能学多少,但是能学夺少算多少~奥里给!!!`emmmm 首先是C++的单链表啊~主要是内存空间的分配 太容易混淆了,用结构体做的,没有用类做那么清晰~但是理解就OK了哈哈哈哈struct Node //节点{ int data; Node *next;};struct Linklist //指向节点的指针{ Node* head;};void Insert(Linklist &L,int i,int elem){ Node *n=new

2020-08-13 09:38:09 94

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除