<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[owlNo46的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/owlNo46</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; owlNo46]]></copyright><item><title><![CDATA[C++ 实现左移运算符的重载]]></title><link>https://blog.youkuaiyun.com/owlNo46/article/details/109733999</link><guid>https://blog.youkuaiyun.com/owlNo46/article/details/109733999</guid><author>owlNo46</author><pubDate>Tue, 17 Nov 2020 01:37:23 +0800</pubDate><description><![CDATA[我们都知道，在C++里面 cout &lt;&lt; 可以打印基本的数据类型 和 string (需要导入string的头文件)的数据，但是如果我们要它打印一个对象呢？比如有一个 Person person对象，我们如何实现 cout &lt;&lt; person； 来打印person的所有属性？这时候我们需要通过operator&lt;&lt; 函数来实现左移运算符的重载。

具体实现看下面的代码。

Person类的实现


#include&lt;iostream&gt;
#include&lt;s]]></description><category></category></item><item><title><![CDATA[循环队列 C语言]]></title><link>https://blog.youkuaiyun.com/owlNo46/article/details/109410181</link><guid>https://blog.youkuaiyun.com/owlNo46/article/details/109410181</guid><author>owlNo46</author><pubDate>Sun, 01 Nov 2020 00:40:12 +0800</pubDate><description><![CDATA[循环队列就是用了 取模 的方法来改善了 数组存储越界的问题。

当 rear 或者 front 超过了数组的最大下标时，用 rear = (rear + 1) % MAXSIZE 和 front = (front+ 1) % MAXSIZE来实现一个轮回.

就是自己要去学会找到它们之间的关系。


#include&lt;stdio.h&gt;
#include&lt;stdlib.h&gt;

#define MAXSIZE 10

typedef int Data;
typedef struct{..]]></description><category></category></item><item><title><![CDATA[队列 链式结构 C语言实现]]></title><link>https://blog.youkuaiyun.com/owlNo46/article/details/109409060</link><guid>https://blog.youkuaiyun.com/owlNo46/article/details/109409060</guid><author>owlNo46</author><pubDate>Sat, 31 Oct 2020 22:45:15 +0800</pubDate><description><![CDATA[链式队列需要一个头节点(front)和一个尾节(rear)点来控制链表的插入和删除，入队，从尾部插入，出队，从头部断开输出。

这里放两张网上我觉得绘画的很好的示意图（借用csdn博主C__zhang）

入队列示意图



出队列示意图



代码


#include&lt;stdio.h&gt;
#include&lt;stdlib.h&gt;
typedef int Data;

typedef struct node{
	Data data;
	struct node *next;
}Node..]]></description><category></category></item><item><title><![CDATA[中缀表达式转后缀表达式 c语言实现]]></title><link>https://blog.youkuaiyun.com/owlNo46/article/details/109403235</link><guid>https://blog.youkuaiyun.com/owlNo46/article/details/109403235</guid><author>owlNo46</author><pubDate>Sat, 31 Oct 2020 16:18:55 +0800</pubDate><description><![CDATA[栈我就是用的上一篇写的那个链栈， 可能有些栈的方法并没有用到

首先中缀表达式转后缀表达式（逆波兰表达式）需要用到一个栈来辅助实现。下面有几条规则（抄的网友的，哈哈哈自己也重新整理了一下）

具体转换方式: 首先的优先级我把它分为( &gt; ÷ &gt; × &gt; - &gt; +

将字符串从左到右进行遍历
	运算数,直接输出.
	左括号,直接压入堆栈,(括号是最高优先级,无需比较)(入栈后优先级降到最低,确保其他符号正常入栈)
	右括号,(意味着括号已结束)不断弹出栈顶运算符并输出直到遇到左...]]></description><category></category></item><item><title><![CDATA[栈 链式结构 C语言]]></title><link>https://blog.youkuaiyun.com/owlNo46/article/details/109393136</link><guid>https://blog.youkuaiyun.com/owlNo46/article/details/109393136</guid><author>owlNo46</author><pubDate>Fri, 30 Oct 2020 21:10:01 +0800</pubDate><description><![CDATA[栈

由于是链式结构的栈，所以栈的容量基本上可是等于无限。


#include&lt;stdio.h&gt;
#include&lt;stdlib.h&gt;

typedef int DataType;

typedef struct Node
{
	DataType data;
	int lengh;
	struct Node * next;
}Stack;

void init_stack(Stack *stack); 
//压栈 
void stack_push(Stack *stack, Dat]]></description><category></category></item><item><title><![CDATA[栈 结构 数组实现 C语言]]></title><link>https://blog.youkuaiyun.com/owlNo46/article/details/109385449</link><guid>https://blog.youkuaiyun.com/owlNo46/article/details/109385449</guid><author>owlNo46</author><pubDate>Fri, 30 Oct 2020 15:02:09 +0800</pubDate><description><![CDATA[栈

由于使用数组写的，所以初始化的时候需要给定栈的容量大小，需要考虑栈是否满的情况，其实数组也是可以写像链式栈那种不会满的特性的， 可以直接通过malloc()函数来进行扩容， 我上一篇博客用顺序表就实现了这个功能。


#include&lt;stdio.h&gt;
#include&lt;stdlib.h&gt;
typedef int DataType;

typedef struct{
	DataType *data;
	int MaxSize;
	int top;
}Stack;

//初始化.]]></description><category></category></item><item><title><![CDATA[c语言 数据结构 顺序表]]></title><link>https://blog.youkuaiyun.com/owlNo46/article/details/109371647</link><guid>https://blog.youkuaiyun.com/owlNo46/article/details/109371647</guid><author>owlNo46</author><pubDate>Thu, 29 Oct 2020 21:59:46 +0800</pubDate><description><![CDATA[c语言顺序表

运行结果测试


测试结果



代码


#include&lt;stdio.h&gt;
#include&lt;stdlib.h&gt;
typedef int DataType;
typedef struct List{
	DataType *data; //元素 
	int Max_SIZE; //数组的最大容量值 初始化后默认大小为16 
	int lengh; //当前数组的长度 
	const float GROWTH_FACTOR = 0.75; // 增长因子，当数组的长.]]></description><category></category></item><item><title><![CDATA[建立单向动态链表]]></title><link>https://blog.youkuaiyun.com/owlNo46/article/details/80167057</link><guid>https://blog.youkuaiyun.com/owlNo46/article/details/80167057</guid><author>owlNo46</author><pubDate>Wed, 02 May 2018 15:33:31 +0800</pubDate><description><![CDATA[所谓建立动态链表是指在程序执行过程中从无到有地建立起一个链表，即一个一个地开辟结点和输入各个结点的数据，并建立起前后相连的关系。#include&amp;lt;stdio.h&amp;gt;
#include&amp;lt;stdlib.h&amp;gt;
struct number 
{
	int num;
	struct number* next;	
};
int main()
{
	struct number *p, *n...]]></description><category></category></item><item><title><![CDATA[一维动态数组]]></title><link>https://blog.youkuaiyun.com/owlNo46/article/details/80069537</link><guid>https://blog.youkuaiyun.com/owlNo46/article/details/80069537</guid><author>owlNo46</author><pubDate>Tue, 24 Apr 2018 20:21:00 +0800</pubDate><description><![CDATA[一维动态数组一般会引用两个函数，来自“stdlib.h”函数名：malloc函数和形参类型：void * malloc(unsigned size);功能：分配size字节的储存区返回值：所分配的内存区地址，如内存不够，返回0函数名：free函数和形参类型：void *free(void * p);功能：释放p所指的储存区返回值：无下面把0——9存到动态数组里输出来#include &amp;lt;std...]]></description><category></category></item><item><title><![CDATA[指针数组与指针数组]]></title><link>https://blog.youkuaiyun.com/owlNo46/article/details/80068476</link><guid>https://blog.youkuaiyun.com/owlNo46/article/details/80068476</guid><author>owlNo46</author><pubDate>Tue, 24 Apr 2018 18:52:08 +0800</pubDate><description><![CDATA[指针数组数组元素为指针的数组为指针数组。一维指针数组的定义形式为：“类型名*数组标识符[数组长度]”。例如，一个一维指针数组的定义：int *ptr_array[10];下面用一个排序程序来实现指针数组方便的地方给名字排序#include&amp;lt;stdio.h&amp;gt;
#include&amp;lt;string.h&amp;gt; 
#define N  5
#define M 20
int main()
{
...]]></description><category></category></item><item><title><![CDATA[用指针实现起泡法排序]]></title><link>https://blog.youkuaiyun.com/owlNo46/article/details/79980772</link><guid>https://blog.youkuaiyun.com/owlNo46/article/details/79980772</guid><author>owlNo46</author><pubDate>Tue, 17 Apr 2018 21:07:40 +0800</pubDate><description><![CDATA[初学指针，在老师的课上发现了有用的东西，于是就整理了下来#include&amp;lt;stdio.h&amp;gt;
void scanfa(int *a, int n); //相当于实现数组的输入
void Foaming_method(int *a, int n);  //实现起泡法排序
void printfa(int *a, int n);  //相当于实现数组输出
int  N = 5;
int ma...]]></description><category></category></item><item><title><![CDATA[自学python————1]]></title><link>https://blog.youkuaiyun.com/owlNo46/article/details/79967770</link><guid>https://blog.youkuaiyun.com/owlNo46/article/details/79967770</guid><author>owlNo46</author><pubDate>Mon, 16 Apr 2018 23:31:52 +0800</pubDate><description><![CDATA[python的变量不需要定义每一句的结尾也不需要写分号a = 10 // a为整型                                                                        b =  'hello' // a为字符串型                                                               c ...]]></description><category></category></item></channel></rss>