自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 06-图1 列出连通集

#include <stdio.h>#include <stdbool.h>#define N 10void ListComponentsWithDFS();void ListComponentsWithBFS();void DFS(int V);void BFS(int V);void InitVisit(void);int n;bool Visited[N];int G[N][N] = {0};int main(){ int E; .

2020-08-02 21:30:16 154

原创 四、图

目录一、图 Graph二、图的存储2.1 邻接矩阵G[N][N]:2.2 邻接表G[N]指针数组:2.3 十字链表(有向图)2.4 邻接多重表(无向图)三、图的遍历3.1 深度优先搜索(Depth First Search, DFS)3.2 广度优先搜索(Breadth First Search, BFS)3.3 如果图不连通四、图的应用4.1 最短路径4.2 最小生成树4.3 拓扑排序五、Practice一、图 GraphGraph 包含:顶点集:V(Vertex)边集:E(Edge)

2020-07-14 21:33:21 287

原创 三、树

目录一、树1.1 树的基本概念1.2 树的性质1.3 树的存储结构1.3.1 双亲表示法1.3.2 孩子表示法1.3.3 孩子兄弟表示法1.4 树、森林与二叉树之间的转换1.5 树、森林与二叉树的遍历的对应关系二、二叉树2.1 二叉树的性质2.2 二叉树的存储结构2.2.1 顺序存储2.2.2 链式存储三、二叉树的遍历3.1 递归(先、中、后)3.2 非递归(先、中、后)(堆栈)3.3 层序遍历(队列)3.4 二叉树遍历的应用四、二叉搜索树五、平衡二叉树六、堆七、哈夫曼树与哈夫曼编码八、集合及运算(并查集)

2020-07-10 21:46:29 201

原创 二、线性结构

目录一、线性表1.1 顺序表 ArrayList1.2 链表 LinkList1.3 广义表二、堆栈2.1 顺序栈2.2 共享栈2.3 链栈三、队列3.1 循环队列3.2 链队四、Practice一、线性表1.1 顺序表 ArrayList#define MAXSIZE 100typedef int ElementType;typedef struct LNode *List;struct LNode { ElementType Data[MAXSIZE]; int Last

2020-07-10 20:47:18 161

原创 一、概论

目录一、数据结构二、算法三、Practice一、数据结构NameDescription数据结构有一种或多种关系的数据元素的集合逻辑结构线性结构(栈、队列、串、数组、广义表)、树、集合、图物理结构顺序存储、链式存储、索引存储(B树、B+树)、散列存储(哈希表)二、算法NameDescription算法解决特定问题求解步骤的描述特性输入、输出、有穷、确定、可行好的算法正确、可读、健壮、时间效率高、存储量低算法效率度

2020-07-10 20:09:11 118

原创 05-树8 File Transfer

#include <stdio.h>#include <stdlib.h>#define MaxSize 10000typedef int ElementType; //默认元素可以用非负整数表示typedef int SetName; //默认根结点下标作为集合的名称typedef ElementType SetType[MaxSize]; //集合类型定义为数组/** 默认集合元素初始化 -1 1~N 计算机对应下标 0~N-1 元素下标为计算机的编号,对.

2020-07-10 18:47:59 153

原创 05-树7 堆中的路径

#include <stdio.h>#include <stdlib.h>#define MAXN 1001 //多一个哨兵#define MINH -10001int H[MAXN], size;void CreateHeap();void Insert(int X);int main(){ int N,M,X; int i,j; scanf("%d %d",&N,&M); CreateHeap(); .

2020-07-10 18:46:06 120

原创 04-树7 二叉搜索树的操作集

BinTree Insert( BinTree BST, ElementType X ) { if( !BST ) { /* 若原树为空,生成并返回一个结点的二叉搜索树 */ BST = (BinTree)malloc(sizeof(struct TNode)); BST->Data = X; BST->Left = BST->Right = NULL; } else { /* 开始找要插入元素的位置 */ .

2020-07-09 09:18:10 108

原创 04-树5 Root of AVL Tree

#include <stdio.h>#include <stdlib.h>#define ElementType inttypedef struct AVLNode *Position;typedef Position AVLTree; /* AVL树类型,结构指针 */struct AVLNode { ElementType Data; /* 结点数据 */ AVLTree Left; /* 指向左子树 */ AVLTree Righ.

2020-07-09 09:16:42 95

原创 04-树4 是否同一棵二叉搜索树

#include <stdio.h>#include <stdlib.h>typedef struct TreeNode *Tree;struct TreeNode { int V; Tree Left,Right; int flag; //设立被访问的标记,0未被访问,1被访问};Tree MakeTree(int N);Tree NewNode(int V);Tree Insert(Tree T, int V);int Judge(T.

2020-07-09 09:15:49 113

原创 03-树3 Tree Traversals Again

测试了30个元素的斜二叉树结果是对的,但是oj仍然有问题希望有大佬能够解答!#include <stdio.h>#include <stdlib.h>#include <string.h>#define MaxSize 30#define Null -1/**入栈顺序即先序遍历顺序,出栈顺序即中序遍历顺序已知先序遍历和中序遍历求后续遍历: 1 先+中 得到树的结构 2 后续遍历树注意,可以不用得出树的结构数组再得到后序遍历:.

2020-07-04 20:22:44 165

原创 03-树2 List Leaves

#include <stdio.h>#include <stdlib.h>#include <stdbool.h>#define MaxSize 10#define Null -1#define Tree int//树struct TreeNode { int data; int left; int right;} T[MaxSize]; //树的结构数组,树的静态链表表示typedef struct TreeNode .

2020-07-04 20:18:09 109

原创 03-树1 树的同构

#include <stdio.h>#include <stdlib.h>#define MaxTree 10#define ElementType char#define Tree int#define Null -1 //c语言中NULL表示0,这里定义空指针Null表示-1struct TreeNode { ElementType Element; Tree Left; Tree Right;} T1[MaxTree], T2[Ma.

2020-07-04 20:17:03 137

原创 02-线性结构4 Pop Sequence

#include <stdio.h>#include <stdlib.h>/**手动判定: 对于出栈序列的某写元素,比某一元素早入栈却晚出栈,则该些元素逆序出栈 注意栈的空间有限程序判定: 根据待测序列,逆推最大空间为M的栈中元素 满足则YES 如果: 1 溢栈 2 未入栈(待测序列中)元素小于栈顶元素 则NO*/int main() { int M, N, K; sc.

2020-07-02 17:50:12 96

原创 02-线性结构3 Reversing Linked List

#include<stdio.h>#include<stdlib.h>typedef struct { int address; int data; int next;} Node;typedef Node *PtrNode;void ArrayList(Node L[], int N, int first);void ReverseList(Node L[], int N, int K);void exchange(PtrNode a,.

2020-07-02 17:49:01 100

原创 02-线性结构2 一元多项式的乘法与加法运算

#include <stdio.h>#include <stdlib.h>typedef struct PolyNode *Polynomial; //自定义类型名,多项式结构体指针PolynomialPolynomial ReadPoly();void Attach(int c, int e, Polynomial *pRear);Polynomial Add(Polynomial P1, Polynomial P2);Polynomial Mult(Polyn.

2020-07-02 17:47:45 282

原创 02-线性结构1 两个有序链表序列的合并

List Merge( List L1, List L2 ) { List L, rear,t1,t2; t1=L1->Next; t2=L2->Next; L=(PtrToNode)malloc(sizeof(struct Node)); L->Next=NULL; rear=L; while(t1&&t2) { if(t1->Data < t2->Data) { .

2020-07-02 17:46:21 142

原创 01-复杂度3 二分查找

Position BinarySearch( List L, ElementType X ){ int high = L->Last; int low = 1; while(low<=high){ int mid = (low+high)/2; if(L->Data[mid]==X){ return mid; }else if(L->Data[mid]>X){ .

2020-06-27 21:40:06 88

原创 01-复杂度2 Maximum Subsequence Sum

#include <stdio.h>#include <stdlib.h>int main() { int K = 0; scanf("%d", &K); int a[K]; for(int i=0; i<K; i++) scanf("%d",&a[i]); int MaxSum = -1; int ThisSum = 0; int low = 0; int newlow =.

2020-06-27 21:38:17 96

原创 01-复杂度1 最大子列和问题

#include <stdio.h>#include <stdlib.h>int main(){ int K = 0; scanf("%d", &K); int a[K]; for(int i=0; i<K; i++) scanf("%d",&a[i]); int MaxSum = 0; int ThisSum = 0; for(int i=0; i<K; i++){ .

2020-06-27 21:36:23 82

原创 CodeBlocks快捷键

快捷键功能ctrl+shift+c注释掉多行ctrl+shift+x取消注释Ctrl + L前切当前行到剪贴板Ctrl + Shift + T复制当前行到剪贴板Ctrl + Shift + L删除当前行Ctrl + D向下复制当前行

2020-06-26 12:17:39 136

原创 十三、反射

目录一、Java反射机制概述1.1 Java Reflection1.2 动态语言 vs 静态语言1.3 Java反射机制提供的功能1.4 反射相关的主要API二、Class类、获取Class的实例⭐2.1 理解Class类2.2 获取Class实例2.3 可以有Class对象的类型2.4 Class类常用方法三、类的加载、ClassLoader3.1 类的加载3.2 类加载器3.3 ClassLoader四、应用一:创建运行时类的对象⭐【newInstance】五、应用二:获取运行时类的完整结构5.1 属

2020-05-14 16:27:03 103

原创 六、视图、变量、存储过程、函数、流程控制结构

目录一、概述二、视图的创建【CREATE VIEW...】三、视图的修改【CREATE OR REPLACE... \ ALTER VIEW...】四、视图的删除【DROP...】五、视图的更新【INSERT \ UPDATE \ DELETE】一、概述含义:虚拟表,和普通表一样使用MySQL 5.0.1 版本出现的新特性,是通过表动态生成的数据比如:舞蹈班和普通班级的对比,领导检查想看舞蹈班,各班临时紧急抽调,领导走了临时组的舞蹈班就散了 创建语法的关键字 是否实际占用物理空间

2020-05-08 21:20:08 145

原创 五、TCL

目录一、事务概述二、事物的创建三、事物的隔离3.1 不隔离的问题3.2 事务的隔离级别一、事务概述Transaction Control Language 事务控制语言事务:一个或一组sql语句组成一个执行单元,这个执行单元要么全部执行,要么全部不执行一旦执行失败或产生错误,整个单元将会回滚,所有受到影响的数据将返回到事物开始以前的状态MySQL存储引擎: SHOW ENGI...

2020-05-06 22:40:38 80

原创 四、DDL

目录一、库的管理1.1 库的创建【CREATE DATABASE...】1.2 修改字符集【ALTER DATABASE...】1.3 库的删除【DROP DATABASE...】二、表的管理2.1 表的创建【CREATE TABLE...】2.2 表的修改【ALTER TABLE...】2.3 表的删除【DROP TABLE...】2.4 表的复制【CREATE TABLE... LIKE......

2020-05-04 23:37:55 75

原创 三、DML

目录一、插入【INSERT】1.1 insert into...(...)values(...);1.2 insert into... set ...=..., ...;1.3 两种方式对比二、修改【UPDATA】2.1 修改单表的记录2.2 修改多表的记录三、删除【DELETE】3.1 delete3.2 truncate3.3 区别一、插入【INSERT】1.1 insert into...

2020-05-04 21:55:14 202

原创 二、DQL

目录一、基础查询二、条件查询三、排序查询四、常见函数五、分组查询连接查询子查询分页查询联合查询一、基础查询USE myemployees; #使用myemployees库SELECT last_name FROM employees;SELECT last_name, salary, email #最后一个列名不加","FROM employees ;S...

2020-05-02 23:57:53 113

原创 一、概述

目录一、数据库1.1 相关概念1.2 数据库的好处1.3 数据库存储特点1.4 常见的数据库管理系统二、SQL2.1 SQL并非完全可移植2.2 SQL分类三、MySQL3.1 简介3.2 MySQL工具3.2.1 MySQL命令行3.2.2 MySQL Administrator3.3.3 MySQL Query Browser3.3 使用MySQL3.3.1 MySQL服务的启动和停止3.3....

2020-05-02 00:45:53 185

原创 十二、网络编程

目录一、网络编程概述二、网络通信要素概述三、通信要素1:IP和端口号3.1 IP 地址3.2 InetAddress类3.3 端口号四、通信要素2:网络协议4.1 TCP/IP协议簇4.2 TCP 和 UDP五、TCP网络编程5.1 Socket5.2 Socket类5.3 基于Socket的TCP编程5.4 客户端—服务端六、UDP网络编程6.1 DatagramSocket 类的常用方法6.2...

2020-05-01 20:47:18 207

原创 获取文本上字符出现的次数并写入文件

package com.lsy.java;import org.junit.Test;import java.io.*;import java.util.HashMap;import java.util.Map;import java.util.Set;/** * 获取文本上字符出现的次数,把数据写入文件 * * 思路: * 1.遍历文本每一个字符 * 2.字符出现...

2020-04-29 21:03:32 238

原创 十一、IO流

目录一、File类的使用1.1 File类概述1.2 File的实例化1.2.1 常用构造器1.2.2 路径的分类1.2.3 路径分隔符1.3 File类的常用方法二、IO流原理及流的分类三、节点流(或文件流)四、缓冲流五、转换流六、标准输入、输出流七、打印流八、数据流九、对象流十、随机存取文件流十一、NIO.2中Path、Paths、Files类的使用一、File类的使用1.1 File...

2020-04-26 22:18:23 114

原创 十、泛型

目录一、概述二、在集合中使用泛型三、自定义泛型结构3.1 自定义泛型类、泛型接口3.2 自定义泛型方法3.3 DAO四、泛型在继承上的体现五、通配符的使用5.1 <?>5.2 有限制的通配符一、概述泛型:允许在定义类、接口时通过一个标识表示类中某个属性的类型或者是某个方法的返回值及参数类型。这个类型参数将在使用时(例如, 继承或实现这个接口,用这个类型声明变量、创建对象时)确...

2020-04-26 17:37:24 90

原创 九、Java集合

目录一、Java集合框架概述1.1 数组的弊端1.2 Java集合框架二、Collection接口方法三、Iterator迭代器接口四、Collection子接口一:List五、Collection子接口二:Set六、Map接口七、Collections工具类一、Java集合框架概述1.1 数组的弊端集合、数组都是对多个数据进行存储操作的结构,简称Java容器数组在内存存储方面的特点...

2020-04-22 20:51:03 117

原创 八、注解

目录一、注解(Annotation)概述二、常见的Annotation示例三、自定义Annotation四、JDK中的元注解五、利用反射获取注解信息六、JDK 8中注解的新特性一、注解(Annotation)概述JDK 5.0 开始, Java 增加了对元数据(MetaData) 的支持, 也就是Annotation(注解)Annotation 其实就是代码里的特殊标记通过使用 Ann...

2020-04-22 19:25:41 92

原创 七、枚举类

目录枚举类说明一、如何自定义枚举类(JDK 5.0之前)二、如何使用关键字enum定义枚举类(JDK 5.0)三、Enum类的主要方法四、实现接口的枚举类枚举类说明枚举类的理解:类的对象只有有限个,确定的,称此类为枚举类当需要定义一组常量时,强烈建议使用枚举类如果枚举类中只有一个对象,则可以作为单例模式的实现方式一、如何自定义枚举类(JDK 5.0之前)public class...

2020-04-22 13:21:40 83

原创 获取两个字符串中最大相同子串

获取两个字符串中最大相同子串。比如:str1 = "abcwerthelloyuiodef“;str2 = “cvhellobnm”return “hello”// 如果只存在一个最大长度的相同子串public String getMaxSameSubString(String str1, String str2) { if (str1 != null && str2...

2020-04-21 20:34:07 266

原创 六、Java常用类

目录一、字符串相关的类1.1 String类及常用方法1.1.1 String特性(不可变性)1.1.2 String对象的创建1.1.3 String实例化的不同方式1.1.4 字符串拼接方式赋值的对比1.1.5 String常用方法1.2 StringBuffer、StringBuilder二、JDK 8.0之前的日期时间API2.1 System静态方法2.2 Date类2.3 Calend...

2020-04-19 23:52:00 126

原创 五、多线程

目录一、基本概念1.1二、线程的创建和使用三、线程的生命周期四、线程的同步五、线程的通信六、JDK5.0新增线程创建方式一、基本概念1.1二、线程的创建和使用三、线程的生命周期四、线程的同步五、线程的通信六、JDK5.0新增线程创建方式...

2020-04-15 22:24:37 169

原创 IntelliJ IDEA安装、配置与使用

目录一、安装1.1 IntelliJ IDEA 2018.3.21.2 目录结构1.2.1 安装目录1.2.2 设置目录二、配置2.1 性能优化(64位8G以上可设置)2.2 视图2.3 Settings2.3.1 设置鼠标滚轮修改字体大小2.3.2 设置鼠标悬浮提示2.3.3 设置自动导包功能2.3.4 设置显示行号和方法间的分隔符2.3.5 忽略大小写提示2.3.6 设置取消单行显示 tabs...

2020-04-15 21:02:30 242

原创 Eclipse、IDEA快捷键

序号功能快捷键1执行(run)alt+r2提示补全 (Class Name Completion)alt+/3单行注释ctrl + /4多行注释ctrl + shift + /5向下复制一行 (Duplicate Lines)ctrl+alt+down6删除一行或选中行 (delete line)ctrl+d7向...

2020-04-15 00:28:36 87

空空如也

空空如也

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

TA关注的人

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