- 博客(30)
- 收藏
- 关注

原创 大学做的第一款游戏---三子棋
代码实现#define _CRT_SECURE_NO_WARNINGS#define MAX_ROW 3#define MAX_COL 3#include <iostream>#include <cstdio>#include <cstdlib>#include <ctime>using namespace std;void init(char chessBoard[MAX_ROW][MAX_COL])//初始化棋盘...
2021-10-30 15:21:10
2425
原创 想进大厂?这些TCP协议知识你应该知道
概念传输控制协议(TCP)是一种面向连接的、可靠的、基于字节流的传输层通信协议,职责为进程和进程之间的通信, 为进程间的通信提供可靠保证(并非安全保障)什么是可靠TCP会尽自己最大努力,将数据传输给对方 如果遇到实在无法发送不到的情况下,TCP会提示发送进程,数据发送操作失败了 保证不会收到错误的数据 TCP能保证收到的数据一定是有序的(按照发送进程时的顺序) TCP会根据对方的接受能力和网络线路的承载能力,进行流量的控制TCP保证可靠的机制确认应答机制
2022-05-22 19:05:03
1460
原创 想进大厂?这些网络知识你应该知道
IP地址概念IP地址主要是用于标识网络主机、其他网络设备(如路由器)的网络地址。格式IP地址通常用“点分十进制”的方式标识,如:100.4.5.6.特殊IP127.*的IP地址用于本机环回测试,通常是127.0.0.1.端口号概念在网络通信中,IP地址用于标识主机网络地址,端口号可以标识主机中发送数据、接受数据的进程。格式0~65535范围的数字注意事项两个不同进程,不能绑定同一个端口号,但一个进程可以绑定多个端口号。网络协议概念网络
2022-05-18 17:53:07
819
原创 想进大厂?这些文件操作IO流你应该了解(内含详细截图)
File概述属性构造方法方法代码示例示例1:普通文件的创建、删除import java.io.File;import java.io.IOException;public class Main2 { public static void main(String[]args) throws IOException { //目前来说,这个文件是不存在的 File file=new File("hello -world.
2022-05-11 18:00:48
1133
1
原创 想进大厂?单例模式和阻塞队列你了解吗?
单例模式概念单例模式是校招中最长考的设计模式之一,所以我们先介绍什么是设计模式。设计模式:软件开发中有许多常见的“问题场景”,比如各种各样的工厂它们的运营模式都是类似,针对这些问题场景,大佬们总结出了一些固定的套路,并且用代码实现了基本模板。单例模式:能保证某个类在程序中只存在唯一一份实例,而不会创建出多个实例。例如JDBC中的DataSource。单例模式的具体实现方式,分为"饿汉"和"懒汉"两种饿汉模式何为饿汉模式?顾名思义饥不择食,慌不择路,这里也是同
2022-05-01 16:26:34
1022
原创 想进大厂?你了解操作系统吗?
概念操作系统(Operating System, OS):是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源分配,以提供给用户和其他软件方便的接口和环境的软件集合。简单来说:操作系统协调不同任务对硬件资源的访问,一切硬件资源都需要找操作系统申请后才能被授权。进程概念从用户的角度来看:进程是程序的一次执行过程(动态过程),一个程序可以进行多次执行(多个线程);甚至可以"同时"执行(多个进程同时存在)。从操作系统的角度来看,进程是进行资源分配的最小单位
2022-04-23 18:35:23
768
1
原创 想进大厂?你了解白/黑盒测试吗?
目录黑盒测试概念常用的测试方法白盒测试概念原则常用的测试方法逻辑覆盖黑盒测试概念 黑盒测试也称为功能测试或数据驱动测试,它是在已知产品所具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。...
2022-04-17 13:32:25
904
3
原创 想进大厂,这些计算机组成原理的知识你知道嘛?
目录冯诺依曼体系广义数据在内存的存储问题CPU的基本工作原理加法器的实现CPU的工作流程CPU的中断模式冯诺依曼体系概念数学家 冯·诺依曼 提出了计算机制造的三个基本原则,即采用二进制逻辑、程序存储执行以及计算机由五个部分组成( 运算器 、 控制器 、 存储器 、 输入设备 、 输出设备 ),这套理论被称为冯·诺依曼体系结构。示意图功能1)运算器:计算机中执行各种算术和逻辑运算操作的部件。运算器的基本操作包括加、减、乘、除四则运算,与、或、非、异或等逻辑
2022-04-15 13:04:04
931
3
原创 富冈义勇 大战 N叉树的层序遍历
大家好,我是爱动漫更爱编程的小工同学~ 全文目录 🎁题目分析 💡思路点拨 🏆参考代码 🚀每日一图🎁题目分析N叉树层序遍历问题其实就是二叉树层序遍历问题简单...
2022-04-08 16:38:05
461
2
原创 每日一题-----岛屿问题(第一天)
问题分析:题目要求是要找到矩阵中“岛屿的数量”,什么是岛屿呢?上下左右相连有1的都被认为是连续岛屿,比如示例1中只有一个岛屿,因为你随便从一个1出发可以到达其他所以1。解题思路: dfs方法:社目前指针指向一个岛屿中的某一点(i,j),然后从该点出发寻找岛屿的边界 从(i,j)向上下左右(i+1,j),(i-1,j),(i,j+1),(i,j-1)做深度搜索。 终止条件(剪枝条件) (i,j)越过矩阵的边界 grid[i][...
2022-04-07 09:12:34
780
3
原创 一篇搞懂快速排序
原理-总览1、从待排序区间选择一个数,作为基准值privot;2、Partition:遍历整个待排序区间,将比基准值小的(可以包含相等的)放到基准值的左边,将比基准值大的(可以包含相等的)放到基准值的右边3、采用分治思想,对左右两个校区间按照同样的方式处理,直到小区间的长度==1,代表已经有序,或者小区间的长度==0,代表没有数据。---------------------------------------------------------------------------------
2022-03-22 08:59:25
864
1
原创 Java优先级队列(概念+例题)
基本概念:优先级队列的Java实现是一种特殊的队列,其中元素的排序由其自然排序原则确定(默认最小堆),也可以根据创建期间提供的Comparator进行定制。我们在构造过程中调用的构造函数决定要与优先级队列一起使用的排序原则。与不允许使用null元素的Queue <E>不同,但是某些实现(例如LinkedList)也不禁止插入null元素。但是,PriorityQueue <E>根本不允许空元素。如果优先级队列是根据自然顺序构造的,则任何不可比较的元素插入都将引发ClassCast
2022-03-06 21:24:46
2228
原创 找到数组里消失的数字(鸽笼原理)
概念鸽笼原理 (抽屉原理) “如果有五个鸽子笼,养鸽人养了6只鸽子,那么当鸽子飞回笼中后,至少有一个笼子中装有2只或2只以上鸽子。”这个简单的事实就是著名的鸽笼原理,在我们国家更多地称为抽屉原理。问题分析:看到这道题,常规做法就是创建一个的哈希数组来存储1~n的数,然后遍历查重找到缺少的数字。下面介绍一个很巧妙的解法,也能帮助你更好的理解鸽箱原理。数组里面数的范围是1~n,那么对应的索引范围就是0~n-1。我们以示例一解释 [4,3,2,7,8,2,3,1] 解题思路:我们可以
2022-03-01 16:05:05
1168
原创 DFS深度优先搜索算法(适合初学者)
前言本文旨在帮助小白熟悉DFS的基本流程和递归算法的理解,主要包括我们用回溯的思想对题目进行分析的过程,编写代码过程中递归函数语义以及参数的确定等一系列细节。基本的概念官方解释:一种用于遍历或搜索树或图的算法。 沿着树的深度遍历树的节点,尽可能深的搜索树的分支。当节点v的所在边都己被探寻过或者在搜寻时结点不满足条件,搜索将回溯到发现节点v的那条边的起始节点。整个进程反复进行直到所有节点都被访问为止。属于盲目搜索,最糟糕的情况算法时间复杂度为O(!n)。其实说白了就跟咱们闯关游戏一样,遇到分岔
2022-02-19 17:32:03
5211
1
原创 Java刷题常用的Arrays方法(超全~~~)
Java-Arrays类常用方法详解一、Arrays类的定义 Arrays类位于 java.util 包中,主要包含了操纵数组的各种方法二、Arrays类的常用方法1、Arrays.fill(Object[ ] array, Object obj)用指定元素填充整个数组(替换数组原元素) int arr[]={1,2,3,4}; Arrays.fill(arr,5); for(int i=0;i<arr.length;i++) {
2022-02-14 21:14:44
1705
1
原创 刷题常用的String方法
(1)public String toString()返回字符串本身代码实例:System.out.println("hello world".toString()); //输出:hello world(2)public char charAt(int index)查找字符串下标为inde的字符,并且返回代码实例:System.out.println("hello world".charAt(0)); //输出:hSystem.out.println("hello w
2022-02-08 13:59:40
1551
1
原创 Iterable、Collection、List 的常见方法签名以及含义
Iterable---------------------------------------------------------------------------------------------------------------------------------average()元素平均值。元素类型必须为Integer、Float等数字类型fun main(args: Array<String>) { val iterable = listOf(1, 2
2022-01-29 13:13:03
1268
原创 Java基础语法总结(超全)~~~
基础语法目录基础语法面向对象基础语法数据类型 描述 占用字节 取值范围 默认值 int 正型,用于存储整数 4个字节 -2147483648~2147483647 0 byte Java中最小的数据类型 1个字节 short 短整型 2个字节 long 长整型 -2^63~2^63 -1 float 浮点...
2022-01-29 12:44:03
713
原创 Java基础篇(三)-----异常
一、 异常机制的概述 异常机制是指当程序出现错误后,程序如何处理。具体来说,异常机制提供了程序退出的安全通道。当出现错误后,程序执行的流程发生改变,程序的控制权转移到异常处理器。 程序错误分为三种:1.编译错误;2.运行时错误;3.逻辑错误。 (1)编译错误是因为程序没有遵循语法规则,编译程序能够自己发现并且提示我们错误的原因和位置,这个也是大家在刚接触编程语言最常遇到的问题。 (2)运行时错误是因为程序在执行时,运行环境发现了不能执行的操作。 ...
2022-01-24 13:57:20
740
原创 Java面向对象基础篇(二)
接口和抽象类接口接口的概念:Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。接口的特点:就像一个类一样,一个接口也能够拥有方法和属性,但是在接口中声明的方法默认是抽象的。(即只有方法标识符,而没有方法体)。package Company;public interface Animal { final int a=10; //全局变量 publ..
2022-01-19 14:40:52
744
原创 JAVA面向对象基础篇(一)
目录面向对象三大特征---------------------------------------------------------------------------------------------------------------------------------一、面向对象万物皆对象,我们通常把现实生活中的事物抽象为对象,例如人、车、动物等,每个对象都具有各自的状态特征(属性)及行为特征(方法)。面向对象就是把构成问题的事物分解成一个个对象,建立对象是为了描述某个
2022-01-09 19:29:34
303
1
原创 初学者链表题不会做----看这一篇就够了(JAVA)
目录概念例题总结概念:链表是一种常见的基础数据结构,链表可以动态的进行存储分配,也就是说,链表是一个功能极为强大的数组,他可以在节点中定义多种数据类型,还可以根据需要随意增添,删除,插入节点。链表都有一个头指针,一般以head来表示,存放的是一个地址。链表中的节点分为两类,头结点和一般节点,头结点是没有数据域的。链表中每个节点都分为两部分,一个数据域,一个是指针域。说到这里你应该就明白了,链表就如同车链子一样,head指向第一个元素:第一个元素又指向第二个元素;……,直到最后一个元素,该
2021-12-24 18:12:27
1078
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人