自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 设计模式——工厂模式

简单工厂模式,工厂方法模式,抽象工厂模式

2022-03-19 14:19:54 379

原创 Java内部类

概述内部类信息(属性、方法)可以和外部类重名;内部类是具有类的基本特征的独立实体;可以利用访问修饰符隐藏内部类的实施细节,提供了更好的封装;静态内部类使用时可直接使用,不需先创造外部类。内部类可以用多个实例,每个实例都有自己的状态信息,并且与其他外围对象的信息相互独立。内部类并没有令人迷惑的“is-a”关系,他就是一个独立的实体。内部类提供了更好的封装,除了该外围类,其他类都不能访问。创建内部类对象的时刻并不依赖于外围类对象的创建。成员内部类作为成员存在,可以被任意权限修饰符修饰

2022-03-17 15:30:08 283

原创 常用类介绍

String类String类不能被继承String创建好之后值是不可以被改变的,这里指的是在堆中的字符串的值是不可以被改变。 public static void main(String[] args) { String s = "monkey"; change(s); System.out.println("main:" + s);//monkey } public static void change(String s) {

2022-03-14 10:31:50 638

原创 异常Exception

异常的概述和分类异常主要分为2种,分别是编译时异常和运行时异常运行时异常:此种异常在编译时可以不用处理,例如被0除异常,java没有要求我们一定要处理。编译时异常:有的地方也叫做一般性异常,出现了这种异常必须在程序里面进行处理,否则程序无法编译通过。异常的处理编写代码处理特定的异常,这些异常被处理之后,程序能够继续向下执行,比如后面要讲的try catch关键字。将异常抛出或者不处理,这些最终都交给了jvm,jvm会将异常信息打印到控制台,比如后面要讲的throws关键字。

2022-03-11 10:17:10 692

原创 Java面向对象基础

Java面向对象基础类与对象在一个Java程序里面,是由多个类(class)构成的,类是由属性和方法组成的,即类=属性+方法(属性就是变量)定义类类的修饰符 class 类名 extends 父对象名称 implements 接口名称 { 类体,成员变量和方法组成}成员变量与局部变量成员变量:写在类体的里面,方法体的外面,声明时可以不进行初始化值,可以被本类或其他类的方法进行调用。局部变量:写在方法体的里面,声明时必须进行初始化,只能在声明局部变量的方法内进行调用。在一个类中,成

2022-03-10 16:36:20 190

原创 Java基础概念

Java基础Java语言跨平台原理在需要运行Java应用程序的操作系统上,先安装一个JVM(Java Virtual Machine)即Java虚拟机,由JVM来负责Java程序在该系统中的运行,不同的操作系统需要安装不同的JVM,这样Java程序只需要跟JVM打交道,底层的操作由JVM去执行。JRE和JDKJRE(Java Runtime Environment)即Java运行时环境,主要负责运行Java程序。JDK(Java Development Kit)即Java开发工具包,主要用来开发

2021-11-04 20:21:34 59

原创 C++继承

1. 继承基类的构造函数声明:class Animal{public: Animal(std::string name); ~Animal();private: std::string name;}class pig : public Animal{public: pig(std::string name); ~pig();private: std::string name;}定义如果子类定义了构造方法,不论是无参数的还是带参数的,在创建子类对象的时候,首先执

2020-05-20 11:41:45 115

原创 顺序表例题

1. 基础题从顺序表中删除具有最小值的元素,并由函数返回被删元素的值,空出的位置由最后一个元素填补,若顺序表为空则显示出错信息并退出运行算法思想:输入顺序表的元素值,获得表长设计函数,定义变量minminmin比较出顺序表最小值,并记录序号将len−1len-1len−1的值替换最小元素值,函数返回最小元素/*从顺序表中删除具有最小值的元素,并由函数返回被删元素的值,空出的位置由最后一个元素填补,若顺序表为空则显示出错信息并退出运行*/#include<stdio.h&g

2020-05-15 21:47:59 1019

原创 指针函数与函数指针

1. 函数指针函数指针 的本质是一个指针,该指针的地址指向了一个函数,所以它是指向函数的指针#include<stdio.h>int max(int a,int b){ if(a>b){ return a; } return b;}int min(int a,int b){ if(a>b){ re...

2020-05-07 11:23:21 98

原创 字符数组与字符指针

1. 字符数组存放字符量的数组#include<stdio.h>void print_str(char str[]){ int i=0; printf("\nstring = "); while(str[i]!='\0'){ printf("%c",str[i]); i++; } printf("\n");...

2020-05-06 21:29:21 244

原创 指针与数组

1. 数组指针指向数组的指针对指针变量进行加法和减法运算时,是根据数据类型的长度来计算的∗(p+i)=a[i]*(p+i) = a[i]∗(p+i)=a[i]#include<stdio.h>int main(){ int a1[3] = {2,3,4}; int *p1; p1 = a1; printf("*p1 = %d, *(p...

2020-05-06 19:04:07 96

原创 C总结:指针、结构体

1 内存四区数据类型本质分析是固定内存大小的别名数据类型的作用:编译器预算对象(变量)分配的内存空间大小typedef int Elemtype;//定义别名typedef struct teacher{ int age;}teacher;int main(){ int a; int b[10]; printf("&a = %d,...

2020-05-02 22:01:00 147

原创 【数据结构】第八章 查找

【数据结构】第八章 查找1.基本概念1.查找:根据给定的关键字值,在特定的列表中确定一个其关键字与给定值相同的数据元素,并返回该数据元素在列表中的位置。2.平均查找长度:为确定数据元素在列表中的位置,需和给定值进行比较的关键字个数的期望值,称为查找算法在查找成功时的平均查找长度。对于长度为n的列表,查找成功时的平均查找长度为:ASL= P1C1+ P2C2+…+ PnCn=∑PiCi(1&l...

2020-04-22 17:57:06 1210

原创 C++学习笔记(1)C++对C的扩展

1.C++对C的加强1.1 C++命名空间namespace标准C++引入了关键字namespace(命名空间/名字空间/名称空间/名域),可以更好地控制标识符的作用域。当使用的时候,该头文件没有定义全局命名空间,必须使用namespace std;这样才能正确使用cout。若不引入using namespace std ,需要这样做。std::cout。C中的命名空间在C语言中只...

2020-04-19 13:58:57 145

原创 【数据结构】第七章 排序

1.排序基本概念1.拓扑排序是将有向图中所有结点排成一个线性序列,虽然也是在内存中进行的,但它不属于这里所提到的内部排序范畴,也不满足前面排序的定义。2.对于任意序列进行基于比较的排序,求最少的比较次数应考虑最坏情况。对任意n个关键字排序的比较次数至少为⌈log2(n!)⌉\lceil log_2(n!) \rceil⌈log2​(n!)⌉对任意7个关键字进行基于比较的排序,至少要进行几次...

2020-04-14 15:54:00 4215

原创 【剑指offer】17和18

【剑指offer】17和181.面试题17. 打印从1到最大的n位数输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数 999。示例 1:输入: n = 1输出: [1,2,3,4,5,6,7,8,9]说明:用返回一个整数列表来代替打印n 为正整数思路:使用cmath函数库中的pow(x,n)函数class ...

2020-02-21 21:44:45 85

原创 【剑指offer】14 II,15和16

【剑指offer】14 II,15和161.面试题14 II. 剪绳子 II给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]…k[m] 。请问 k[0]k[1]…*k[m] 可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。答案需要...

2020-02-20 21:48:48 106

原创 【剑指offer】13与14 I

【剑指offer】13与14 I1.面试题13. 机器人的运动范围地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为3+5+3+7=18。但它不能进入方格...

2020-02-19 22:02:03 68

原创 【数据结构】第六章 树与二叉树

【数据结构】第六章 树与二叉树1.基本概念树是n(n≥0)个结点的有限集合T。当n=0时,称为空树;当n>0时,该集合满足如下条件:(1)其中必有一个称为根(root)的特定结点,它没有直接前驱,但有零个或多个直接后继。(2)其余n-1个结点可以划分成m(m≥0)个互不相交的有限集T1,T2,T3,…,Tm,其中T;又是一棵树,称为根root的子树。每棵子树的根结点有且仅有一个直接前...

2020-02-19 13:04:13 548

原创 【剑指offer】11与12

【剑指offer】11与121.面试题11. 旋转数组的最小数字把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一个旋转,该数组的最小值为1。示例 1:输入:[3,4,5,1,2]输出:1示例 2:输入:[2,2,2,0,1]输出:0二分...

2020-02-18 21:39:49 134

原创 【剑指offer】10-I与10-II

1.面试题10- I. 斐波那契数列写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项。斐波那契数列的定义如下:F(0) = 0, F(1) = 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。答案需要取模 1e9+7(1000000007),如计算初...

2020-02-17 19:54:35 365

原创 【剑指offer】07与09

【剑指offer】07与091.面试题07. 重建二叉树输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树: 3 / \9 20 / \ 15 7限制:0 &l...

2020-02-16 21:47:12 147

原创 【剑指offer】05与06

【剑指offer】05与061.面试题05. 替换空格请实现一个函数,把字符串 s 中的每个空格替换成"%20"。示例 1:输入:s = “We are happy.”输出:“We%20are%20happy.”限制:0 <= s 的长度 <= 10000时间复杂度O(n),空间复杂度O(n)class Solution {public: string rep...

2020-02-15 19:17:30 239

原创 【计算机网络】第四章 网络层

【计算机网络】第四章 网络层网络层 :负责在不同网络之间尽力转发数据包,基于数据包的IP地址转发,不负责丢失重传,不负责顺序。1. 网络层提供的两种服务(1)虚电路服务(2)数据报服务H1发送给H2的分组可能沿着不同路径传送。网络层只向上提供简单灵活的、无连接的、尽最大努力交付的数据报(分组)服务。网络在发送分组时不需要先建立连接。每个分组(IP数据报)独立发送,与其前后无关。网络...

2020-02-15 17:43:45 1237

原创 【数据结构】第五章 数组与广义表

【数据结构】第五章 数组与广义表1.基本概念数组和广义表,可看成是一种扩展的线性数据结构。(1)数组1从逻辑结构上看,数组可以看成是一般线性表的扩充。一维数组即为线性表,二维数组可定义为“其数据元素为一维数组(线性表)”的线性表。2数组是一组有固定个数的元素的集合。对数组的操作不像对线性表的操作那样可以在表中任意一个合法的位置插入或删除一个元素。对于数组的操作一般只有两类:获得特定位置的...

2020-02-14 20:25:02 571

原创 【数据结构】第四章 串

【数据结构】第四章 串1.基本概念字符串是一种特殊的线性表,其特殊性在于组成线性表的每个元素就是一个单字符。串(String)是零个或多个字符组成的有限序列。子串:串中任意个连续的字符组成的子序列称为该串的子串主串:包含子串的串相应地称为主串。子串在主串中的位置则以子串的第一个字符在主串中的位置来表示。只有当两个串的长度相等,并目每个对应位置的字符都相等时才相等。(1)定长顺序串...

2020-02-14 20:24:46 753

原创 【数据结构】第三章 限定性线性表---栈与队列

【数据结构】第三章 限定性线性表—栈与队列1.基本概念(1)栈栈作为一种限定性线性表,是将线性表的插入和删除运算限制为仅在表的一端进行,栈顶的当前位置是动态变化的,它由一个称为栈顶指针的位置指示器指示。同时表的另一端被称为栈底。后进先出的线性表。有两种基本的存储结构:顺序存储结构(顺序栈)、链式存储结构(链栈)(1)顺序栈顺序栈是用一组地址连续的存储单元依次存放自栈底到栈顶的数据元素...

2020-02-14 20:24:31 422

原创 【数据结构】第二章 线性表

【数据结构】第二章 线性表1.基本概念线性表的逻辑结构: 线性表是n个类型相同的数据元素的有限序列,数据元素之间是一对一的关系,即除第一个元素无直接前驱,最后一个元素无直接后继外,每个数据元素最多有一个直接前驱和一个直接后继。元素间具有一对一的关系。(1)线性表的顺序存储线性表的顺序存储结构:指用一组地址连续的存储单元依次存储线性表中的各个元素,使得线性表中在逻辑结构上相邻的数据元素存储...

2020-02-14 20:24:11 246

原创 【数据结构】第一章

【计算机网络】第五章 运输层

2020-02-14 20:23:33 176

原创 【计算机网络】第三章 数据链路层

【计算机网络】第三章 数据链路层1. 基本概念数据链路层的信道类型:点对点信道:使用一对一的点对点通信方式广播信道: 使用一对多的广播通信方式。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送。链路:是一条点到点的物理线路段,中间没有任何其他的交换结点。一条链路只是一条通路的一个组成部分。数据链路: 除了物理线路外,还必须有通信协议来控制这些数据的传输...

2020-02-14 20:23:09 1501

原创 【计算机网络】第二章 物理层

【计算机网络】第二章 物理层1. 基本概念物理层解决如何在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。物理层的主要任务描述为: 确定传输媒体的接口的一些特性,即:(1). 机械特性: 接口形状、大小、引线数目。(2). 电气特性: 规定电压范围(-5V到+5V) 。(3). 功能特性: 规定-5V表示0,+5V表示1(4). 过程特性: 也称规程特性,规定建立连...

2020-02-14 20:22:57 305

原创 【计算机网络】第一章 概述

【计算机网络】第一章 概述1. 局域网与广域网(1) 局域网:覆盖范围小,自己花钱购买设备,带宽固定,自己维护,长度小于100米,带宽10M 100M 1000M(2) 广域网:距离远 花钱租带宽(3) Internet ISP 自己的机房,对网民提供访问Internet连接2. OSI参考模型理解OSI参考模型分层(1)OSI参考模型对网络排错指物理层故障: 查看连接状态、...

2020-02-14 20:22:38 342

原创 【剑指offer】03与04

标题1.面试题03. 数组中重复的数字找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例 1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3限制:2 <= n <= 100000/*判断n...

2020-02-14 18:20:02 145

空空如也

空空如也

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

TA关注的人

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