- 博客(103)
- 收藏
- 关注
原创 TCP的三次握手和四次挥手简述
TCP的三次握手和四次挥手简述 三次握手: 客户端向服务器发送SYN报文段,服务器接受到,此时服务器可以确认自己的接收能力是否正常; 服务器向客户端发送SYN报文段和ACK报文段,客户端接收到,此时客户端可以确认自己的发送能力和接受能力是否正常,但是此时服务器端只能确认自己的接收能力,并不能确认自己的发送能力是否正常; 客户端向服务器端发送ACK报文段,服务器接受后即可确认自己的发送能力是否正常,此时,三次握手完毕,客户端和服务器可以开始进行传输数据. 四次挥手: 客户端向服务...
2020-08-20 18:15:30 337
原创 归并排序
package Sort; import java.util.Arrays; /*归并排序 稳定排序 时间复杂度: O(n*log n) 空间复杂度: O(n) * */ public class mergeSort { public static void sort(int[] arr) { sortHelper(arr, 0, arr.length); } private static void sortHelper(int[] arr, int low,.
2020-08-19 22:16:53 160
原创 快速排序
package Sort; import java.util.Arrays; /*快速排序 不稳定排序 时间复杂度: 最好 : O(n*log n) 平均 : O(n*log n) 最坏 : O(n^2) 空间复杂度: 最好 : O(log n) 平均 : O(log n) 最坏 : O(n) * */ public class quickSort { public static void sort(int[] arr) { q.
2020-08-19 20:29:33 150
原创 2020-08-19
package Sort; import java.util.Arrays; /*冒泡排序 稳定排序 时间复杂度: 最好 : O(n) 平均 : O(n^2) 最坏 : O(n^2) 空间复杂度: O(1) * */ public class bubbleSort { public static void sort(int[] arr) { for (int i = 0; i < arr.length; i++) { f.
2020-08-19 20:28:47 99
原创 堆排序
package Sort; import java.util.Arrays; /*堆排序 不稳定排序 时间复杂度: O(n*log n) 空间复杂度: O(1) * */ public class heapSort { public static void sort (int[] arr) { createHeap(arr); for (int i = 0; i < arr.length - 1; i++) { swap(arr.
2020-08-19 20:27:46 94
原创 选择排序
package Sort; import java.util.Arrays; /*选择排序 不稳定排序 时间复杂度: O(n^2) 空间复杂度: O(1) * */ public class selectSort { public static void sort (int[] arr) { for (int i = 0; i < arr.length; i++) { int min = i; for (int j = i .
2020-08-19 20:27:09 102
原创 希尔排序
package Sort; import java.util.Arrays; /*希尔排序 不稳定排序 时间复杂度: 最好 : O(n) 平均 : O(n^1.3) 最坏 : O(n^2) 空间复杂度: O(1) * */ public class shellSort { public static void sort(int[] arr) { int gap = arr.length / 2; while (gap > 1) {.
2020-08-19 20:24:26 106
原创 //素数输出,判断
import java.util.Scanner; import static java.lang.Math.sqrt; public class test1 { //输出1-1000中的素数 public static void main(String[] args) { for (int i = 1; i <= 1000; i++) { int j = 2; for (; j <= sqrt(i); j++.
2020-08-17 20:28:29 88
原创 插入排序
package Sort; import java.util.Arrays; /*插入排序 稳定排序 数组的初始顺序越接近有序,排序的效率越高 时间复杂度: 最好 : O(n) 平均 : O(n^2) 最坏 : O(n^2) 空间复杂度: O(1) * */ public class insertSort { public static void sort(int[] arr) { for (int i = 1; i < arr.length; i.
2020-08-08 21:13:44 141
原创 URI 和 URL
URI : 网络资源的身份标识 URL :网络资源的地址 URI是一个更广义的概念,可类比于一个人的身份标识,即这个人的身份信息.一个人的身份标识可以有很多种,URL即是一种身份标识的方法,可类比于一个人的身份证号码,但一个人的身份标识方法并不仅此一种,还可以有其他方式,比如护照号码,驾照号码,学号工号等等. ...
2020-08-04 21:05:20 115
原创 //字符串中找出连续最长的数字串
import java.util.Scanner; //字符串中找出连续最长的数字串 public class Main_831 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNext()) { String str = scanner.nextLine(); .
2020-08-03 21:41:35 181
原创 //餐馆
import java.util.Arrays; import java.util.Scanner; //餐馆 public class Main_833 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { int desk = sc.nextInt(); int .
2020-08-03 21:41:02 124
原创 //最小的K个数
import java.util.ArrayList; import java.util.Arrays; //最小的K个数 public class Main_832 { public ArrayList<Integer> GetLeastNumbers_Solution(int [] input, int k) { ArrayList<Integer> res = new ArrayList<Integer>(); if(inp.
2020-08-03 21:39:07 95
原创 //顺时针打印矩阵
import java.util.*; //顺时针打印矩阵 public class Main_252 { public int[] clockwisePrint(int[][] mat, int n, int m) { int x1=0,y1=0; int x2=n-1,y2=m-1; int i,j; int len=n*m; int arr[]=new int[len]; int flag=1; .
2020-07-27 10:04:51 74
原创 //左右最值最大差
import java.util.Arrays; //左右最值最大差 public class Main_251 { public static int findMaxGap(int[] A, int n) { // write code here int[] max = new int[n - 1]; int k = 0; int max1 = 0; int max2 = 0; for (int i .
2020-07-27 10:04:18 153
原创 //查找兄弟单词
import java.util.*; //查找兄弟单词 public class Main_222 { private static boolean isBrother(String str1, String str2){ char[] chars1 = str1.toCharArray(); char[] chars2 = str2.toCharArray(); Arrays.sort(chars1); Arrays.sort.
2020-07-24 11:07:21 90
原创 //乒乓球筐
import java.util.HashMap; import java.util.Scanner; //乒乓球筐 public class Main_221 { // write your code here public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { String s = .
2020-07-24 11:06:49 140
原创 //单词倒排
import java.util.Scanner; //单词倒排 public class Main_212 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { String in = sc.nextLine(); String[] words = in.split.
2020-07-23 10:44:03 164
原创 //骆驼命名法
import java.util.Scanner; //骆驼命名法 public class Main_211 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { String typeC = sc.next(); String typeJ = ""; .
2020-07-23 10:43:21 95
原创 求和
//求和 import java.util.*; public class Main_202 { static ArrayList<ArrayList<Integer>> res = new ArrayList<ArrayList<Integer>>(); static ArrayList<Integer> list = new ArrayList<>(); public static void main.
2020-07-21 17:31:05 95
原创 电话号码
import java.util.ArrayList; import java.util.Collections; import java.util.Scanner; //电话号码 public class Main_201 { public static void main(String[] args) { String str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"; String num = "222333444555.
2020-07-21 17:30:35 198
原创 //单调栈结构
import java.util.*; //单调栈结构 public class Main_142 { public static int[][] getNearLessRepeat(int[] arr) { ArrayDeque<List<Integer>> stack = new ArrayDeque<>(); int[][] res = new int[arr.length][2]; for (int i =.
2020-07-18 10:12:44 111
原创 数组中值出现了一次的数字
import java.util.Arrays; import java.util.Scanner; //数组中值出现了一次的数字 public class Main_141 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNext()) { int num = scanner.nex.
2020-07-18 10:08:33 81
原创 句子逆序
import java.util.Scanner; //句子逆序 public class Main_132 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNext()) { String sentence = scanner.nextLine(); Str.
2020-07-18 10:06:46 84
原创 删除公共字符
import java.util.Scanner; //删除公共字符 public class Main_131 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNext()) { String s1 = scanner.nextLine(); String s.
2020-07-18 10:06:03 79
原创 TcpThreadPoolEchoServer
import java.io.*; import java.net.ServerSocket; import java.net.Socket; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class TcpThreadPoolEchoServer { private ServerSocket serverSocket = null; public T.
2020-07-16 18:48:13 116
原创 TcpThreadEchoServer
import java.io.*; import java.net.ServerSocket; import java.net.Socket; public class TcpThreadEchoServer { private ServerSocket serverSocket = null; public TcpThreadEchoServer (int port) throws IOException { serverSocket = new ServerSock.
2020-07-16 18:47:14 110
原创 TcpEchoServer
import java.io.*; import java.net.ServerSocket; import java.net.Socket; public class TcpEchoServer { // 1. 初始化服务器 // 2. 进入主循环 // 1) 先去从内核中获取到一个 TCP 的连接 // 2) 处理这个 TCP 的连接 // a) 读取请求并解析 // b) 根据请求计算响应 // c) 把响应写.
2020-07-16 18:46:42 269
原创 TcpEchoClient
import java.io.*; import java.net.Socket; import java.util.Scanner; public class TcpEchoClient { // 1. 启动客户端(一定不要绑定端口号) 和服务器建立连接 // 2. 进入主循环 // a) 读取用户输入内容 // b) 构造一个请求发送给服务器 // c) 读取服务器的响应数据 // d) 把响应数据显示到界面上. private Soc.
2020-07-16 18:46:10 432
原创 最近公共祖先
//最近公共祖先 public class Main_121 { public int getLCA(int a, int b) { if (a == b || a == b/2) { return a; } if (a/2 == b) { return b; } while (a != b) { if (a > b) { .
2020-07-16 18:44:49 117
原创 空格替换
import java.util.Arrays; //空格替换 public class Main_122 { public String replaceSpace(String iniString, int length) { String ne = ""; int count = 0; String[] a = iniString.split(" "); for (int i = 0; i < a.length; i++) .
2020-07-16 18:44:26 89
原创 地下
import java.util.Scanner; //地下迷宫 public class Main_112 { public static String path = ""; public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); int m = in.nextInt(); int .
2020-07-15 18:42:38 109
原创 木棒拼图
import java.util.Arrays; import java.util.Scanner; //木棒拼图 public class Main_111 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNext()) { int num = scanner.nextInt(); .
2020-07-15 18:41:49 189
原创 进制转换
import java.util.Scanner; //进制转换 public class Main_102 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNext()) { String str = scanner.next(); char[] ch = s.
2020-07-13 18:32:19 145
原创 字母统计
import java.util.Scanner; //字母统计 //对每个案例按A-Z的顺序输出其中大写字母出现的次数 public class Main_101 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNext()) { String in = scanner.nextLi.
2020-07-13 18:31:49 159
原创 球的半径和体积
import java.util.Scanner; //球的半径和体积 public class Main_082 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNext()) { int[] dian = new int[6]; for (int i = 0.
2020-07-10 20:22:18 126
原创 Broken KeyBoard
import java.util.LinkedHashMap; import java.util.Map; import java.util.Scanner; //Broken KeyBoard public class Main_081 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNext()) { .
2020-07-10 20:21:46 314
原创 上楼梯
public class Main_072 { //上楼梯 public int countWays(int n){ int a = 1,b = 2,c = 4; if (n== 1){ return a; }else if (n == 2){ return b; }else if (n == 3){ .
2020-07-10 19:02:46 75
原创 锤子剪刀布
import java.util.Scanner; //锤子剪刀布 public class Main_071 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); //甲乙两人,以甲为记录,甲胜即乙负; int win = 0; int lose = 0; int equ = 0; in.
2020-07-10 19:02:11 106
原创 练习UdpEchoClient
import java.io.IOException; import java.net.*; import java.util.Scanner; public class UdpEchoClient { // 客户端的主要流程分成四步. // 1. 从用户这里读取输入的数据. // 2. 构造请求发送给服务器 // 3. 从服务器读取响应 // 4. 把响应写回给客户端. private DatagramSocket socket = null; .
2020-07-09 19:48:40 340
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人