![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
经历
瑞-板凳精神
星光不问赶路人-你可以不平凡
展开
-
工厂模式-
简单工厂模式属于类的创建型模型,又叫静态工厂方法模式。定义一个类来负责创建其他类的实例,被创建的实例通常具有共同的父类。工厂模式抽象工厂可以向客户端提供一个接口,使得客户端在不指定产品具体类型的情况下,能够创建多个产品族的产品对象。工厂方法模式针对的是一个产品等级结构,而抽象工厂模式针对的是多个产品等级结构。...原创 2021-03-19 10:35:26 · 669 阅读 · 0 评论 -
数据结构——栈(c++版)
栈原创 2021-03-18 16:58:16 · 95 阅读 · 0 评论 -
数据结构——链表(c++版)
将一个线性表插入到另一个中将所有的在线性表Lb中但不在La中的数据元素插入到La中*/void union (List *La,List Lb){ int La_len,Lb_len,i; ElemType e; /*声明与La和Lb相同的数据元素e*/ La_len = ListLength(La) ; /*求线性表的长度 */ Lb_len = ListLength (Lb) ; for( i=l; i<=Lb_len; i++ ) { GetElem(Lb, i,e)原创 2021-03-17 10:24:52 · 72 阅读 · 0 评论 -
中序遍历——非递归算法
中序遍历先走到的后访问,后走到的先访问,采用栈结构。步骤:1.如果节点有左子树,该节点入栈,否则访问该节点。2.如果节点有右子树,重复步骤1。3.如果节点没有右子树,访问完毕,根据栈顶指示退回,访问栈顶元素,并访问右子树,重复步骤1。4.如果栈为空,遍历结束。例子(c++版):#include<iostream>#include<stack>using namespace std;typedef struct Binary_tree{ int u原创 2021-03-16 21:34:30 · 3222 阅读 · 0 评论 -
数据结构——树
树节点的分类:节点拥有的子树数称为:节点的度(degree),度为0的节点称为叶节点(leaf)或终端节点,度不为0的节点称为非终端节点或分支节点。树的度是树内各节点度的最大值。二叉树的性质每个节点最多有两个子树。第i层有2^(i-1)个节点,深度为k的二叉树最多有2 ^(k)-1.度为2的节点数比叶子数多1。例如下图2中的数量关系为:1号+2号+3号+4号 = 8号+9号+10号。满二叉树:每个节点的度为2。完全二叉树:第k-1层和满二叉树一样,最后一层的叶子节原创 2021-03-16 09:08:31 · 73 阅读 · 0 评论 -
数据结构——队列(c语言版)
队列基本概念队列是一种先进先出(FIFO)特殊的线性表,仅在线性表的两端操作,不允许在中间操作。对头(front):取出元素的一端队尾(rear):插入元素的一端线性队列例子:依据单链表改造即可。#include<stdio.h>#include<malloc.h>#include<string.h>#include<stdlib.h>#include<windows.h>typedef struct Node{原创 2021-03-14 21:45:16 · 98 阅读 · 0 评论 -
数据结构之——栈(c语言版)
栈的介绍栈是一种特殊的线性表,仅在线性表的一端操作(栈顶top)。插入操作:进栈、压栈、入栈。删除操作:出栈、弹栈。用线性表的顺序存储模拟栈时,在尾部添加或删除元素,不会涉及到元素的大量移动。用线性表的链式存储模拟栈,在头部插入或删除元素,不会涉及到元素的大量移动。栈的链式存储利用单链表结构创建栈(头插法):例子:#include<stdio.h>#include<malloc.h>#include<string.h>#include<原创 2021-03-14 16:46:22 · 85 阅读 · 0 评论 -
循环链表(c语言版)
#include<stdio.h>#include<malloc.h>#include<string.h>#include<stdlib.h>#include<windows.h>typedef struct Node{ //定义连接链表的节点: Node* next;}node;typedef struct Common_list{ //定义一个空间域 node head; int length;}common_原创 2021-03-13 22:00:13 · 305 阅读 · 0 评论 -
单链表(c语言版)
模拟手机类型管理#include<stdio.h>#include<malloc.h>#include<string.h>#include<stdlib.h>typedef struct Phone{ int price; char brand[8]; //int price2; struct Phone *next;}phone;phone *insert(phone *old,phone *new_){ if (old ==原创 2021-03-10 20:27:50 · 272 阅读 · 0 评论 -
运算符重载练习
运算符重载#include <iostream>#include<string>#include<vector>#include<new>using namespace std;class Car;class Phone{private: string brand; int price; //char str[8];public: Phone(); Phone(const string &b,int pri); fr原创 2021-03-10 09:51:09 · 132 阅读 · 0 评论 -
c++类对象的例子(非标准语法;请使用 “&“ 来创建指向成员的指针,如何解决?)
Game.cpp......#include "Game.h"#include<iostream>#include<string>#include<time.h>#include<stdlib.h>#include<new>#include<typeinfo>#include<algorithm>Game::Game(){ cout << "begin to no paraments in原创 2021-03-09 11:23:16 · 792 阅读 · 0 评论 -
实现n的阶乘运算
在c++中利用递归调用实现阶乘# include<iostream>int factorial(int num){ if (num == 0) { return 1; } else { return num * factorial(num-1); }}void vivo4(){ cout << "input a number: "; int in_num; int result; while (cin>>in_num) {原创 2021-03-08 17:00:35 · 119 阅读 · 0 评论 -
c++面试总结
指针和引用的区别:引用是给变量起别名,内部实现是指针常量(int* constref= &a),其可以简单的理解为本体指针存放的是变量的地址。引用的本质是指针常量,其指向不可修改,而指针可以改变指向。引用创建的同时必须初始化,指针创建的时候可以不必初始化。引用不能为空,指针可以为NULL。“引用变量ref"的内存单元保存的是"被引用变量a"的地址sizeof(引用) =指向变量的大小sizeof(指针)=指针本身的大小。引用使用的时候无需解引用,指针需要解引用。指针和引用"自增/自减原创 2021-03-05 11:00:45 · 177 阅读 · 1 评论 -
c++递归调用
递归调用如果recurse()进行了n次递归调用,则statement1顺序执行n次,然后statement2与函数调用相反的方向顺序执行n次,进入n层递归调用后,程序沿原路径返回。void recurs(argumentlist){ statements1 if (test) recurs(arguments) statements2}...原创 2021-01-19 20:46:56 · 192 阅读 · 0 评论 -
C++简单的文件输入输出
写入到文本文件1.包含头文件:#include < fstream >2.头文件中定义了一个用于处理输出的ofstream类,所以要声明一个或多个ofstream变量并命名xxx。3.指明命名空间std:using std::xxx,或直接std::xxx4.将该ofstream对象同一个文件关联起来,即:xxx.open(文件名);要检查是否文件open成功5.就像使用cout那样使用xxx6.使用完后关闭:xxx.close();cout.precision(val)其实就是原创 2021-01-19 09:51:13 · 176 阅读 · 0 评论 -
冒泡排序bubble_sort
步骤手动输入要排序的序列从小到大排序代码如下:#include<stdio.h>#include<string>int main(){ int input[5]; int input_len = sizeof(input) / 4; printf("数组长度input_len = %d\n",input_len); printf("请输入数组:\n"); for (int i = 0; i < input_len; i++) { scan原创 2021-01-16 09:49:49 · 79 阅读 · 0 评论 -
基于多进程服务器的在线购物
服务器#include<stdio.h>#include<pthread.h>#include<signal.h>#include<unistd.h>#include<sys/socket.h>#include<stdlib.h>#include<arpa/inet.h>#include<ctype.h>#include<string.h>#include<sys/types原创 2021-01-16 09:55:51 · 72 阅读 · 0 评论