自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 dp分析法

背包问题大概有8种类型。本博文仅描述01背包、完全背包、部分背包问题。01背包问题完全背包部分背包

2021-01-12 01:17:11 866 2

原创 全排列

dfs实现。import java.util.*;import java.util.Stack;//全排列,回溯实现public class allsort { static Stack<String> path = new Stack<>(); static int [][] graph = { {0,1,2,1}, {1,0,0,0}, {2,0,0,1}, {1,0,1,0}}; //节点数 static int n

2021-01-12 01:15:38 187

原创 n皇后

package Temp;import java.util.Scanner;public class nQueen { static int res; public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); //n*n棋盘,n个皇后

2021-01-12 01:13:20 166

原创 错误票据

错误票据思路:排序找断号、找重号。要点:输入这块要注意。import java.util.Scanner;import java.util.*;import java.util.ArrayList;//错误票据public class day05prc1 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.

2020-10-14 08:46:03 140

原创 常见日期类问题汇总

黑色星期五要点:记住公式。import java.util.Scanner;//黑色星期五public class day04prc1 { public static void main(String []args){ Scanner sc = new Scanner(System.in); int y = sc.nextInt(); for(int m=1;m<13;m++){ int W=0; if(m==1 || m==2){ W = (.

2020-10-11 13:55:34 252

原创 【数据结构】—— chapter 06 图的存储及基本操作 (part1)

文章目录6.2 图的存储及基本操作6.2.1 邻接矩阵法6.2.2 邻接表法6.2.3 十字链表6.2.4 邻接多重表6.2 图的存储及基本操作6.2.1 邻接矩阵法数组实现的顺序存储。用一维数组存顶点信息,二维数组存储图中边的信息(此二维数组称为邻接矩阵)。无向图、有向图对应的邻接矩阵:网对应的邻接矩阵:所谓的网就是带权图。邻接矩阵法的一些要点6.2.2 邻接表法顺序+链式存储。对图G的每个顶点建立一个单链表。与树中的孩子表示法相同。邻接表存储结构

2020-10-10 19:43:53 265

原创 【数据结构】—— chapter 05 树与二叉树的应用 (part4)

文章目录5.5 树与二叉树的应用5.5.1 二叉排序树1. 二叉排序树的定义5.5 树与二叉树的应用5.5.1 二叉排序树1. 二叉排序树的定义

2020-07-15 15:35:14 218

原创 【数据结构】—— chapter 05 树、森林 (part3)

文章目录5.4 树、森林5.4.1 树的存储结构1. 双亲表示法(顺序存储)2. 孩子表示法(顺序+链式存储)3. 孩子兄弟表示法(链式存储)5.4.2 树、森林与二叉树的转换1. 树与二叉树的相互转换2. 森林与二叉树的相互转换3. 小结5.4.3 树和森林的遍历1. 树的遍历2. 森林的遍历3. 小结5.4 树、森林5.4.1 树的存储结构树的存储方式有很多种,既可以采用顺序存储结构,又可以采用链式存储结构,但无论采用何种存储方式,都要求唯一地反映树中各结点之间的逻辑关系,这里介绍3种常用

2020-07-14 14:50:44 974

原创 【数据结构】—— chapter 05 二叉树的遍历和线索二叉树 (part2)

文章目录5.3 二叉树的遍历和线索二叉树5.3.1 二叉树的遍历1. 先序遍历2. 中序遍历3. 后序遍历4. 遍历算数表达式树5. 层次遍历6. 由遍历序列构造二叉树5.3.2 线索二叉树1. 引言2. 线索二叉树的存储结构3. 手算画出线索二叉树4. 二叉树的线索化(代码)5. 线索二叉树找前驱/后继(代码)5.3 二叉树的遍历和线索二叉树5.3.1 二叉树的遍历遍历:按照某种次序把所有结点都访问一遍。层次遍历:基于树的层次特性确定的次序规则。先/中/后序遍历:基于树的递归特性确定的次序规则。

2020-07-12 15:14:47 441

原创 【数据结构】—— chapter 05 树与二叉树的概念 (part1)

文章目录5.1 树的基本概念5.1.1 树的定义5.1.2 基本术语5.1.3 树的性质5.2 二叉树的概念5.2.1 二叉树的定义及其主要特性5.1 树的基本概念5.1.1 树的定义5.1.2 基本术语1. 结点之间的关系描述2. 结点、树的属性描述3. 有序树、无序树4. 森林5.1.3 树的性质1. 树中的结点数等于所有结点的度数加1。【 结点的度 —— 结点有几个孩子(分支)】2. 度为m的树、m叉树的区别3.4.5.6.小结5.2 二叉树

2020-07-10 14:08:28 276

原创 【数据结构】—— chapter 04 串

文章目录4.1 串的定义和实现4.1.1 串的定义4.1.2 串的基本操作4.1.3 串的存储结构4.2 串的模式匹配4.2.1 简单的模式匹配算法4.2.1 改进的模式匹配算法 —— KMP算法1. 步步模拟得到next数组 + Kmp算法代码2. next数组手算方法3. next数组算法代码 + Kmp算法代码4.2.3 KMP算法的进一步优化 —— nextval数组4.1 串的定义和实现4.1.1 串的定义 串是一种特殊的线性表,数据元素之间呈线性关系 ;串的数据对象限定为字符集

2020-07-09 11:15:57 309

原创 【数据结构】 —— chapter 03 栈和队列的应用

栈在括号匹配中的应用用栈实现括号匹配:依次扫描所有字符,遇到左括号入栈,遇到右括号则弹出栈项元素检查是否匹配。匹配失败情况:①左括号单身②右括号单身③左右括号不匹配代码如下:[ main.h头文件,写栈的基本操作,如下 ]#include<stdio.h>#include <malloc.h>#include <stdlib.h>#define MaxSize 100typedef struct { char data[MaxSize]; i

2020-07-07 14:14:03 318

原创 【数据结构】—— chapter 02 线性表

文章目录2.1 线性表的定义与基本操作2.1.1 线性表的定义2.1.2 线性表的基本操作2.1.3 小结2.2 线性表的顺序表示2.2.1 顺序表的定义2.2.2 顺序表上基本操作的实现2.3 线性表的链式表示2.3.1 单链表的定义2.3.2 单链表上基本操作的实现2.3.3 双链表2.3.4 循环链表2.3.5 静态链表2.3.6 顺序表和链表的比较2.1 线性表的定义与基本操作2.1.1 线性表的定义线性表是具有相同数据类型的n (n≥0) 个数据元素的有限序列,其中n为表长,当n=0时线性

2020-05-16 13:10:41 298

原创 【数据结构】—— chapter 01 绪论

文章目录1.1 数据结构的基本概念1.1.1 基本概念和术语1.1.2 数据结构三要素1.1.3 小结1.2 算法和算法评价1.2.1 算法的基本概念1.2.2 算法效率的度量1.1 数据结构的基本概念1.1.1 基本概念和术语数据:数据是信息的载体,是描述客观事物属性的数、字符以及所有能输入到计算机中并被计算机识别和处理的符号的集合。数据元素:数据元素是数据的基本单位,通常作为一个整体进行考虑和处理。一个数据元素由若干数据项组成。eg:学生记录就是一个数据元素,它 由学号、姓名、性别等数据项

2020-05-12 22:30:03 320

原创 【计网】—— ISO/OSI参考模型和TCP/IP模型

文章目录OSI模型OSI模型 VS TCP/IP模型OSI模型OSI 七层功能协议应用层终端应用:FTP、WEB、QQFTP、HTTP、DNS、SMTP表示层数据压缩、加密解压、数据格式转换会话层不同主机进程的会话、建立同步传输层差错检测、拥塞控制、流量控制、为端到端提供可靠传输服务TCP、UDP网络层路由选择、差错检测、拥塞控制、流量控制IP、ICMP、RIP、OSPF、BGP、IGMP数据链路层寻址、成帧、差错控制、流量控制

2020-05-11 15:27:33 452

原创 【计网】—— MTU、MSS、MSL、RTT、TTL

MTU:最大传输单元,链路层的帧中的数据部分的最大字节数,以太网中的一般为1500字节。MSS:最大报文段大小,TCP的报文段中的数据部分的最大字节数,MTU减去IPv4的Header和TCP的Header。IPv4的Header和TCP的Header一般都是20字节,则MSS=1500-20-20 = 1460字节MSL:报文最大生存时间,报文在网络上存在的最长时间,TCP连接必须经过时间2...

2020-05-05 14:24:17 7611

原创 【计网】—— chapter 05 传输层

文章目录5.1 传输层功能1. TCP/IP协议集2. 传输层的两个协议3. 传输层协议和应用层协议之间的关系4. 应用层协议和服务之间的关系5. 传输层功能6. 传输层协议和网络层协议的主要区别7. 传输层端口5.2 传输层协议UDP和TCP5.2.1 UDP1. UDP特点2. UDP报文段格式3. UDP检验和5.2.2 TCP1. TCP特点2. TCP面向字节流的过程3. TCP的连接4...

2020-05-05 14:09:17 325

原创 【计网】—— 快速熟悉服务器搭建

文章目录一、服务器1. 本地服务器2. 远程服务器二、搭建服务器的常规流程三、如何申请免费的空间和域名以及上传自己的网站一、服务器服务器(我们也会称之为主机)是提供计算服务的设备,它也是一台计算机。在网络环境下,根据服务器提供的服务类型不同,服务器又分为文件服务器、数据库服务器、应用程序服务器、Web服务器等。Web服务器一般指网站服务器 ,是指驻留于因特网上某种类型计算机的程序,可以向浏...

2020-05-03 23:00:59 519

原创 【计网】—— chapter 04 网络层

文章目录4.1 实现网络层功能的设备 —— 路由器4.2 网络层提供的服务4.3 计算机通信的过程4.4 网络设备和OSI参考模型4.5 网际协议IP4.5.1 IP地址4.5.2 子网掩码4.5.3 划分子网1. 为什么要划分子网2. 等长子网划分(1) C类网络子网划分(2) B类网络子网划分(3) A类网络子网划分(4) 点到点网络的子网掩码(5) 网段(即子网地址)3. 变长子网划分4...

2020-04-23 17:30:23 648

原创 【计网】—— chapter 03 数据链路层

文章目录3.1 基本概念1. 数据链路层的简单模型2. 数据链路层使用的信道3. 链路与数据链路4. 帧3.2 基本问题1. 封装成帧2. 透明传输3. 差错检测3.3 使用点对点信道的数据链路层3.4 使用广播信道的数据链路层3.1 基本概念1. 数据链路层的简单模型数据链路层像个数字管道,常常在对等的数据链路层之间画出一个数字管道,而在这条数据管道上传输的数据单位是帧。2. 数据链路...

2020-04-19 13:15:51 369

原创 【计网】—— chapter 02 物理层

2.1 物理层的基本概念物理层解决如何在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。ps:传输媒体如 光纤、双绞线;数据比特流其实就是数字信号物理层的主要任务描述为:确定 传输媒体的接口的一些特性,即:机械特性:接口形状,大小,引线数目电气特性:规定电压范围(-5V到+5V)功能特性:规定-5V表示0,+5V表示1过程特性:规定建立连接时各个相关部件的工作步骤...

2020-04-18 00:02:42 307

原创 【计网】—— chapter 01 概述

计算机网络是互连的、自治的计算机集合。互连:互通,通信链路;自治:无主从关系计网的功能数据通信、资源共享…计网的组成计网的分类想要实现不同厂商的硬、软件之间相互连通,必须遵从统一标准。计网的性能指标速率 —— 连接在计算机网络上的主机在数字信道上传送数据位数的速率,也称为data rate或bit rate。单位是b/s, kb/s, Mb/s, Gb/s.带宽 —— 数据...

2020-04-18 00:02:10 889

原创 回形取数

问题描述  回形取数就是沿矩阵的边取数,若当前方向上无数可取或已经取过,则左转90度。一开始位于矩阵左上角,方向向下。输入格式  输入第一行是两个不超过200的正整数m, n,表示矩阵的行和列。接下来m行每行n个整数,表示这个矩阵。输出格式  输出只有一行,共mn个数,为输入矩阵回形取数得到的结果。数之间用一个空格分隔,行末不要有多余的空格。样例输入3 31 2 34 5 67...

2020-03-08 20:23:35 339

原创 Java集合框架

其中List代表了有序可重复集合,可直接根据元素的索引来访问;Set代表无序不可重复集合,只能根据元素本身来访问;Queue是队列集合;Map代表的是存储key-value对的集合,可根据元素的key来访问value。一、Set集合HashSet是Set集合最常用实现类,是其经典实现。创建示例:Set<String> sn = new HashSet<>();二...

2020-03-05 22:35:30 161

原创 图的基础知识

文章目录图是什么1.图的种类2.无向图的术语3.有向图的术语图的表示1.邻接矩阵2.邻接表3.小结图是什么图由顶点(vertex 或 node)和边 ( edge ) 组成,顶点的集合是V,边的集合是E的图记为G = (V,E)。连接两点u和v的边用e = (u,v)表示。1.图的种类大体分为无向图和有向图。我们可以给边赋予各种各样的属性。比较具有代表性的有权值( cost )。边上带...

2020-03-05 13:57:55 720

原创 排序算法 —— 快速排序 && 冒泡排序

啥是 稳定性?:稳定:原先a在b的前面,若a=b,排序后仍然是a在b的前面;不稳定:原先a在b的前面,若a=b,排序后b可能在a的前面。快速排序思路:就像是不断的给基准值找位置的过程;1.首先将原数组中的第1个数当作基准值(主元),借助左右指针移位,使得基准值左边的数都小于它,右边的都大于它。将此时基准值的下标返回作为分割的下标。2.得到分割的下标后,递归实现左右两部分。3.左右两...

2020-03-04 23:36:42 176

原创 方格填数 —— dfs

方格填数如下的10个格子±-±-±-+| | | |±-±-±-±-+| | | | |±-±-±-±-+| | | |±-±-±-+(如果显示有问题,也可以参看【图1.jpg】)填入0~9的数字。要求:连续的两个数字不能相邻。(左右、上下、对角都算相邻)一共有多少种可能的填数方案?请填写表示方案数目的整数。注意:你提交的应该是一个整数,不要填写任何...

2020-03-03 13:16:08 222

原创 Huffuman树的构造 —— 贪心

问题描述  Huffman树在编码中有着广泛的应用。在这里,我们只关心Huffman树的构造过程。  给出一列数{pi}={p0, p1, …, pn-1},用这列数构造Huffman树的过程如下:  1. 找到{pi}中最小的两个数,设为pa和pb,将pa和pb从{pi}中删除掉,然后将它们的和加入到{pi}中。这个过程的费用记为pa + pb。  2. 重复步骤1,直到{pi}中只剩下...

2020-03-02 12:12:28 235

转载 char[ ]数组与String类型的互换

文章目录1.String ---> char[ ]2.char[ ] ---> String1.String —> char[ ]1)方法1:String类中的toCharArray()方法String a = "abcdef";char[ ] arr = a.toCharArray();2)方法2:通过String类中的charAt()方法与空的char数组St...

2020-03-01 21:31:44 492

原创 拯救行动 —— bfs + 优先队列

样例输入17 8#@#####@#@a#@@r@#@@#x@@@@@#@@#@##@@@##@@@#@@@@@@@@@@@@@@样例输出113样例输入213 40@x@@##x@#x@x#xxxx##@#x@x@@#x#@#x#@@x@#@xxx###x@x#@@##xx@@@#@x@@#x@xxx@@#x@#x@@x@#@x#@x#x#@@##@@x#@xx#xxx...

2020-02-29 14:23:20 343

原创 仙岛求药 —— dfs 与 bfs求解

样例输入18 8.@##…##…#.##.#.##……#.###.#.#…#.…###.#.…#.*….#…###样例输出110样例输入29 6.#…#..#.*.#.####.…#……#……#……#…#.@.##.#…#.样例输出2-1dfsps:使用dfs会运行超时,30组测试数据只能通过部分,其实这种最短路径、最少操作的问题最好还是靠bf...

2020-02-28 19:25:25 667 5

原创 贪心法(四)—— 最优装载问题、部分背包问题、 乘船问题

文章目录最优装载问题部分背包问题乘船问题最优装载问题部分背包问题乘船问题

2020-02-27 19:33:05 609

原创 【字符串匹配算法】—— BF、RK

字符串匹配给定两个字符串A和B,判断B是否是A的字串,并返回B在A中第一次出现的位置。如:在上图中B是A的字串,B第一次在A中出现的位置下标是2,则返回2。为了方便说,就把A串叫主串,把B串称模式串。BF(暴力解法)public class Main{ public static void main(String[] args) { String A = "aa...

2020-02-26 17:25:52 296

原创 字符串专题(二)—— 替换空格、旋转词、翻转单词、去掉连续出现k次的0

替换空格问题:请编写一个方法,将字符串中的空格全部替换为“%20”.假定该字符串有足够的空间存放新增的字符,并且知道字符串的真实长度(小于等于1000),同时保证字符串由大小写的英文字母组成。给定一个string iniString为原始的串,以及串的长度 int len ,返回替换后的string.方法一:public class Main{ public static voi...

2020-02-25 21:30:01 275

原创 字符串专题(一)—— 串内无重复字符、翻转字符串、变形词、两串的字符集相同、简单压缩、

文章目录串内无重复字符串内无重复字符

2020-02-25 00:08:34 343

原创 暴力枚举(一)

1、A、B、C、D、E五名学生有可能参加计算机竞赛,根据下列条件判断哪些人参加了竞赛:(1)A参加时,B也参加;(2)B和C只有一个人参加;(3)C和D或者都参加,或者都不参加;(4)D和E中至少有一个人参加;(5)如果E参加,那么A和D也都参加。在这里插入代码片2、某侦察队接到一项紧急任务,要求在A、B、C、D、E、F六个队员中尽可能多地挑若干人,但有以下限制条件:1)A和B...

2020-02-24 12:11:04 221

原创 位运算

位运算&(与)、|(或)、^(异或)、~ (非 / 取反)>> 和 <<运算符将二进制为进行右移或者左移操作>>>运算符将用0填充高位;>>运算符用符号位填充高位,没有<<<运算符对于int型,1<<35 与 1<<3是相同的位运算的奇巧淫记判断奇偶数:x & 1 = ...

2020-02-23 19:41:29 5032

原创 图论 —— MST

连通图去一条边就是树所有生成树中权值和最小的为最小生成树

2020-02-22 15:28:02 374

原创 Java基础知识

文章目录Java支持的变量类型Java修饰符Java运算符继承重写与重载多态抽象类与接口区别super() 与 this()Java支持的变量类型类变量:独立于方法之外的变量,用static 修饰实例变量:独立于方法之外的变量局部变量:方法中 \ 构造方法中 \ 语句块中Java修饰符访问修饰符default (即默认,什么也不写): 在同一包内可见,不使用任何修饰符。使用对...

2020-02-22 14:02:26 224

原创 【图的dfs】—— 图的着色问题(二分图)

把相邻结点染成不同颜色称为图的着色问题对图进行着色的最小颜色数为2时称为二分图思路:这里对图的表示采取邻接表,然后就是常规的深搜。step 1:创建邻接表的类,包含基本的API:import java.util.ArrayList;import java.util.List;public class GraphNode_AL { //邻接表的表示使用ArrayList来表示邻...

2020-02-21 15:58:25 722

空空如也

空空如也

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

TA关注的人

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