自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++学习 基础(一)

1、数据类型:(一般使用char、int、double、long、string)字符类型 char、signed char、unsigned char;整型 int、short int、signed short int、unsigned short int、long int、signed long int、unsigned long int;浮点型 float、double、long ...

2019-01-01 14:31:19 255

原创 软件工程-软件工程基本概念

知识要点:软件危机的概念、原因以及消除途径;软件工程的概念、基本原理、方法学;软件生命周期,主要软件过程的特点。一、软件危机的定义:软件开发和维护过程中所遇到的一系列严重问题;二、软件危机产生原因:用户需求不明确、缺乏科学理论作为指导、软件开发规模越来越大、软件产品的复杂程度越来越高;三、消除途径:1)研究软件的客观规律性,建立与系统化软件生产有关的概念、原则、方法、技...

2018-10-16 22:38:30 3660

原创 软件工程-软件项目管理

知识要点:估算软件规模;      开发工作量估算;      开发时间、进度估算;关键路径、机动时间;      软件配置及管理过程;      能力成熟度模型。一、软件项目管理的定义:通过计划、组织和控制等一系列活动,合理的配置和使用各种资源,以求达到                                           软件项目开发的过程。二、估算软件规模:...

2018-10-16 20:10:31 1286

原创 软件工程-维护

知识要点:1、软件维护的定义、特点;       2、主要的维护活动;          3、软件再工程过程。前注:维护是软件生命周期最后一个阶段也是持续时间最长、代价最大的一个阶段;一、维护的定义:在软件已经交付使用之后,为改正错误或满足新的需要而修改软件的过程;二、主要的维护活动:改正性维护、适应性维护、完善性维护、预防性维护;改正性维护主要是在软件使用期间诊断和修改错误的...

2018-10-16 15:43:13 490

原创 操作系统-操作系统的概述

知识要点:1、计算机基本构成、处理器的内部结构、高速缓冲存储器CACHE;2、操作系统的概念、演变历程、特性、分类、运行环境、功能;3、存储器的层次结构。操作系统的定义:控制和管理整个计算机系统硬件和软件资源并合理组织调度计算机的工作与资源分配,以提供给用户和其他软方便的接口和程序集合,是计算机系统中最基本的系统软件;操作系统的演变历程:1、未配置操作系统;2、单道批处理;...

2018-10-08 16:32:58 1268 1

原创 数据结构 排序

知识要点:1、插入排序法(含折半插入排序法)、选择排序法、泡排序法(冒泡排序)、快速排序法、堆积排序法(堆排序)、归并排序、基数排序等排序方法排序的原理、规律和特点;2、各种排序算法的时空复杂度的简单分析。排序的稳定性:排序后不改变原序列中相同元素的相对顺序,则此排序方法是稳定的,反之是不稳定的;                         一般情况下,排序的稳定性与其效率...

2018-10-03 18:24:23 1363

原创 数据结构 索引结构与散列

知识要点:线性索引结构、倒排表、静态搜索树的结构和特点;B树的结构;(B-树,B+树)散列的实现原理和各种操作的实现算法。(Hash表,平均查找长度(成功、失败))1.散列函数和散列地址:记录存取位置P和关键字Key之间的对应关系,有P=Function(Key),这个对应关系Function称为散列函数通过此函数得出的P称为散列地址。2.散列表:一个有限的连续的地址空间。...

2018-09-27 18:36:52 3066

原创 数据结构图

知识要点:图的各种基本概念和各种存储方式;(邻接矩阵、邻接链表)图的两种搜索方法和图连的连通性;(深度优先搜索、广度优先搜索)两种最小生成树的生成方法;(普里姆算法(加点法),克鲁斯卡尔算法(加边法))各种求最短路径的方法;(迪杰斯特拉算法,弗洛伊德算法)用顶点表示活动和用边表示活动的两种网络结构特点和相关操作的实现算法。(拓扑排序、AOE网关键路径)1、图的基本概念定...

2018-09-26 19:22:30 831

原创 数据结构树和森林

知识要点:树的结构和主要概念,各种二叉树的结构及其特点;二叉树的三种遍历方法的实现原理和性质,能将二叉树的遍历方法应用于求解二叉树的叶子结点个数、二叉树计数等问题,遍历的非递归实现方法;线索化二叉树的结构和基本操作;(充分利用二叉树的空链域)森林的定义和存储结构,森林的遍历等方法的实现;(遍历方式与二叉树一致)基于霍夫曼树生成霍夫曼编码的方法;最优二叉树(霍夫曼树)的构造原...

2018-09-25 17:37:54 17293

原创 数据结构数组与串

知识要点:串的基本概念、串的存储结构和相关的操作算法;数组的存储结构,在顺序存储的情况下,数组元素与存储单元的对应关系;稀疏矩阵的存储结构和特点以及基本操作。字符串匹配算法(例如KMP算法)。串的定义:由一个或多个字符组成的有限序列;内字符的个数称之为串的长度,字符个数为0的称之为空串。串的比较:1)长度相同       2)对应位置上的元素也相同;重点 串的模式匹配算...

2018-09-25 14:47:30 870

原创 数据结构栈和队列、递归算法

知识要点:栈的定义、结构特点及其存储方式(顺序存储与链接存储)和基本操作的实现算法;队列的结构、特点及其存储方式(顺序存储与链接存储)和基本操作的实现算法。递归的基本概念和实现原理以及用递归的思想描述问题和书写算法的方法;用栈实现递归问题的非递归解法。栈的定义:只允许一段进行插入或者删除操作的线性表;该端称为栈顶(top),相反另一端不允许被操作的称为栈底(base)栈内元...

2018-09-25 08:58:16 1788

原创 数据结构线性表

知识要点:1、线性结构的特点、线性表的定义,线性表的基本操作;2、线性表的顺序存储结构,对其进行检索、插入和删除等操作;3、线性表的链式存储结构,单链表、双向链表和循环链表这三种链表形式的存储结构和特点以及基本操作。线性表的定义:具有相同数据类型的数据元素的有限序列;线性表中元素的个数为线性表的长度,当数据元素个数为0时该表为空表。有且只有一个被称为“第一个”的数据元素;...

2018-09-24 21:25:45 152

原创 数据结构绪论

知识要点:1、数据结构的三要素:逻辑结构、物理结构、数据运算。2、算法的定义以及时间和空间复杂度分析。数据:描述事物的符号记录;数据元素:数据的基本单位;                                               //   如一条学生记录。数据项:组成数据元素的独立的、不可分割的最小的单位;//   如学生记录中的学号、姓名、性别。数据对象...

2018-09-24 17:18:30 153

原创 STL Deque(双向队列) C++

头文件:#include<deque>  (动态一维数组)定义:deque<变量类型> 变量名; 例:deque<变量类型> dq;特点:支持随机访问(数组访问下表从0开始;at方法访问,会抛出异常),性能不如vector;          可以在内部进行插入和删除操作,性能不如list;//性能介于vector和list之间          deque两端...

2018-05-21 14:58:48 852

原创 STL map(图) C++

头文件:#include<map> //按照键值默认已经排好序(升序)map的功能:建立key和value的对应,可以通过key来唯一查询value,查询的时间复杂度为O(logn);在map中key置是唯一的不可以被修改,而value可以被修改。定义:map<key类型,value类型> 变量名;key和value的类型可自定义;例如:map<key,value&g...

2018-05-16 15:42:28 3036

原创 STL set(集合) C++

set集合容器实现了红黑树(Red-Black Tree)的平衡二叉检索树的的数据结构,在插入元素时,它会自动调整二叉树的排列,把该元素放到适当的位置,以确保每个子树根节点的键值大于左子树所有节点的键值,而小于右子树所有节点的键值;另外,还得确保根节点的左子树的高度与有字数的高度相等,这样,二叉树的高度最小,从而检索速度最快。要注意的是,它不会重复插入相同键值的元素,而采取忽略处理。平衡二叉检索树...

2018-05-15 22:40:53 165

原创 STL List(列表) C++

头文件:#include<list>定义:list<数据类型> 变量名;//此处的变量类型可以为任意类型例:list<数据类型> L;list在内存分配的时候不像vector一样分配连续的空间,只能使用迭代器遍历list的数据;(双向链表)list适用于频繁的插入删除操作,对于随机存取需要遍历整个list常用方法:(加粗字体为常用方法)正向迭代器:begin()...

2018-05-15 15:35:24 1363

原创 STL c++ algorithm--sort

头文件#include<algorithm>常用sort函数:默认为升序序列         时间复杂度O(nlog2n)1)sort()             //排序      2参数:sort(begin,end)、3参数:sort(begin,end,compare)     //compare为比较规则//begin为起始位置,end为终止位置,对区间[begin,end-...

2018-05-09 09:01:11 253

原创 STL vector(向量) C++

头文件  #include<vector>定义:vector<变量类型> 变量名;//此处的变量类型可以为任意类型例:vector<变量类型> s;vector类称作向量类,实现了动态数组,用户无需预先开辟数组空间;元素下标同数组相同,不同的是在对其进行操作时,其大小会动态改变。向量的访问方式与数组的访问方式一致,也可以使用下标进行访问,也可以使用其at(num...

2018-05-08 23:15:49 252

原创 BF算法&KMP算法

子串的匹配算法通常称为串的模式匹配或串匹配。通常使用的匹配算法有BF算法和KMP算法主串S和模式串T,若匹配成功返回主串中首次出现的位置,否则返回-1;BF算法:(暴力匹配算法)//只要失败就重新比较时间复杂度:最优时间复杂度O(m+n);最坏时间复杂度O(mn);//n和m分别为主串和模式串的长度算法步骤:(一般情况n>>m)1)声明两个指针i与j分别指向主串S和模式串T当前待比较的...

2018-05-07 21:30:35 1142 1

原创 c++ string类 及其常用方法

包结构:#include<string>//c++头文件     注意:在c中的头文件为#include<string.h>命名空间using namespace std;string类中的方法(加粗字体为常用方法):字符串构造方法(初始化):string(const char * s);//用s初始化当前字符串                               ...

2018-05-03 20:07:27 4617 1

原创 树-二叉排序树(中序有序化)

二叉排序树(Binary Sort Tree)或者是一棵空树;或者是具有下列性质的二叉树: (1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值; (2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值; (3)左、右子树也分别为二叉排序树;注:中序遍历二叉排序树即可得到有序序列;时间复杂度O(logn)查找:(基本步骤)1)若根节点的关键字等于查找元素---查找成功;2)若根节...

2018-05-02 14:53:39 1236

原创 前缀表达式&中缀表达式&后缀表达式

什么也不说先直接上题目:算术表达式的转换Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Description小明在学习了数据结构之后,突然想起了以前没有解决的算术表达式转化成后缀式的问题,今天他想解决一下。   因为有了数据结构的基础小明很...

2018-04-29 10:02:26 1880 1

原创 STL c++ stack与queue容器

之前一直用纯C打代码,繁杂的调用指针、创建结构体来模拟栈和队列,不仅做题速度慢而且正确率也不高,需要频繁的对自己的代码进行验证,通过对于c++的学习知道了两种容器stack和queue,发现之前做过的题目得到很大程度上的简化,而且速度上也有很大的提高。下面我来简单的介绍这两种容器。Stack   头文件:#include<stack>   //先进后出型定义方式:stack<变量...

2018-04-12 21:14:24 188

原创 Python-飞机大战

# -*- coding: cp936 -*-import pygameimport timefrom pygame.locals import *from threading import Timerimport mathimport randomimport os #导入包#pygame.mixer.pre_init(44100,16,2,4096)pygame.init

2017-12-27 20:31:17 518 2

原创 拓扑排序-邻接矩阵表示

数据结构实验之图论十:判断给定图是否存在合法拓扑序列Time Limit: 1000MS Memory Limit: 65536KB SubmitStatistic Discuss Problem Description 给定一个有向图,判断该有向图是否存在一个合法的拓扑序列。Input 输入包含多组,每组格式如下。第一行包含两个整数n,m,

2017-12-18 17:53:24 989

原创 Prim算法(普里姆算法)加点法-Prim算法

数据结构实验之图论六:村村通公路Time Limit: 1000MS Memory Limit: 65536KB SubmitStatistic Discuss Problem Description当前农村公路建设正如火如荼的展开,某乡镇政府决定实现村村通公路,工程师现有各个村落之间的原始道路统计数据表,表中列出了各村之间可以建设公路的若干条道路的成本,你的任务是

2017-12-17 23:01:58 958 1

原创 桶排序

数据结构实验之排序三:bucket sortTime Limit: 250MS Memory Limit: 65536KB SubmitStatistic Discuss Problem Description根据人口普查结果,知道目前淄博市大约500万人口,你的任务是帮助人口普查办公室按年龄递增的顺序输出每个年龄有多少人,其中不满1周岁的按0岁计算,1到2周岁

2017-12-16 11:48:29 175

原创 Hash-开放地址法

#include#define N 100005int Check[N];int main(){ int n,num; scanf("%d %d",&n,&num); for(int i=0;i<n;i++){ int index; scanf("%d",&index); Check[index]=1; } for(int j=0;j<num;j++){ int k

2017-12-16 11:04:24 593

原创 线性探测-Hash表的创建-查找

数据结构实验之查找七:线性之哈希表Time Limit: 1000MS Memory Limit: 65536KB SubmitStatistic Discuss Problem Description根据给定的一系列整数关键字和素数p,用除留余数法定义hash函数H(Key)=Key%p,将关键字映射到长度为p的哈希表中,用线性探测法解决冲突。重复关键字放在h

2017-12-15 21:22:35 1005

原创 二叉树的深度和叶子节点数

int Deapth(Tree * root){//二叉树的深度 if(!root){ return 0; } int m=Deapth(root->Left); int n=Deapth(root->Right); return m>n?m+1:n+1;}int LeaveNum(Tree * root){//二叉树的叶子数 if(!root){ return 0; }

2017-12-13 18:24:30 2562 1

原创 二叉树的叶子值

数据结构实验之二叉树七:叶子问题Time Limit: 1000MS Memory Limit: 65536KBSubmit Statistic DiscussProblem Description已知一个按先序输入的字符序列,如abd,,eg,,,cf,,,(其中,表示空结点)。请建立该二叉树并按从上到下从左到右的顺序输出该二叉树的所有叶子结点。Inp

2017-12-13 18:22:43 735

原创 堆排序-C语言实现

#include#includevoid Swap(int * a,int * b){ int t=*a; *a=*b; *b=t;}void AdjustHeap(int a[],int location,int n){ int key=a[location]; for(int i=2*location;i<n;i*=2){ if(i<n&&a[i]<a[i+1]) //找

2017-12-12 22:11:26 2446 2

原创 Dijkstra算法-最短路径-邻接矩阵表示

图结构练习——最短路径Time Limit: 1000MS Memory Limit: 65536KBSubmit Statistic DiscussProblem Description 给定一个带权无向图,求节点1到节点n的最短路径。 Input 输入包含多组数据,格式如下。第一行包括两个整数n m,代表节点个数和边的个数。(n

2017-12-12 08:15:59 1064

原创 判断两颗二叉排序树是否相等

数据结构实验之查找一:二叉排序树Time Limit: 400MS Memory Limit: 65536KBSubmit Statistic DiscussProblem Description对应给定的一个序列可以唯一确定一棵二叉排序树。然而,一棵给定的二叉排序树却可以由多种不同的序列得到。例如分别按照序列{3,1,4}和{3,4,1}插入初始为空的二叉排序树,

2017-12-11 17:07:04 734

原创 快速排序 C语言描述

找女朋友Time Limit: 15MS Memory Limit: 65536KBSubmit Statistic DiscussProblem Description山东理工大学有很多学生,当然也有很多美女,机械实验班的学委(外号:大王八)很想找个女朋友,但他想找个身高和自己相配的女生做女朋友,现有理工大N个美女的身高数据,但由于N的值较大,为了尽快找到合适的女

2017-12-10 20:35:18 245

原创 图的深度遍历-邻接链表表示

#include#include#define N 1005typedef struct Link{ int data; struct Link * next; struct Link * fir;}Link;Link Pic[N];int front=0;int rear=0;int Check[N];int Queue[N];void DFS(Link a[],int

2017-12-10 18:49:59 420

原创 图的广度遍历-邻接链表表示

#include#include#define N 1005typedef struct Link{ int data; struct Link * next; struct Link * fir;}Link;Link Pic[N];int front=0;int rear=0;int Check[N];int Queue[N];void BFS(Link a[],int

2017-12-10 18:47:47 432

原创 判断无向图图的连通性,邻接矩阵表示

数据结构实验之图论三:判断可达性Time Limit: 1000MS Memory Limit: 65536KBSubmit Statistic DiscussProblem Description 在古老的魔兽传说中,有两个军团,一个叫天灾,一个叫近卫。在他们所在的地域,有n个隘口,编号为1..n,某些隘口之间是有通道连接的。其中近卫军团在1号隘口,天灾军团在n号

2017-12-09 21:56:40 13266

原创 图的深度遍历和回溯

数据结构实验之图论四:迷宫探索Time Limit: 1000MS Memory Limit: 65536KBSubmit Statistic DiscussProblem Description有一个地下迷宫,它的通道都是直的,而通道所有交叉点(包括通道的端点)上都有一盏灯和一个开关;请问如何从某个起点开始在迷宫中点亮所有的灯并回到起点?Input

2017-12-09 18:18:35 836

空空如也

空空如也

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

TA关注的人

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