xbsNotes


  • Home

  • scientific

  • Coding

  • Tags

  • About

  • Search

剑指offer-困难篇

Posted on 2020-07-16 | In 剑指offer , 数据结构和算法

对称的二叉树

题目描述:叉树同此二叉树的镜像是同样的,定义其为对称的。

思路:递归,编写方法,判断以两根节点的二叉树是否对称

Read more »

mysql数据库

Posted on 2020-06-26 | In mysql

登录和退出MySQL服务器

1
2
3
4
#登陆
mysql -uroot -p12345612;
#退出
exit;


Read more »

常用数据结构和算法

Posted on 2020-06-25 | In 数据结构和算法

排序算法

冒泡排序

  • 需要 array.length-1 轮的比较,可以通过优化标识来减少比较的次数,时间复杂度O(n^2)

冒泡排序

Read more »

剑指offer-较难篇

Posted on 2020-06-25 | In 剑指offer , 数据结构和算法

滑动窗口的最大值

题目描述:给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4],2,6,2,5,1}, {2,[3,4,2],6,2,5,1}, {2,3,[4,2,6],2,5,1}, {2,3,4,[2,6,2],5,1}, {2,3,4,2,[6,2,5],1}, {2,3,4,2,6,[2,5,1]}。

思路:滑动窗口的最大值

Read more »

java-基础

Posted on 2020-06-16 | In Java

Java面向对象

  • 面向对象:是一种程序设计的思想, 其基本思想是使用对象、类、封装、继承、多态等基本概念来进行程序设计。

  • 三大特性:

  1. 封装:封装性就是尽可能的隐藏对象内部细节,只保留一些对外的接口使其与外部发生联系。用户无需关心对象内部的细节,但可以通过对象对外提供的接口来访问该对象。

    可以通过对类的成员设置一定的访问权限,实现类中成员的信息隐藏。

Read more »

剑指offer-中等篇

Posted on 2020-06-10 | In 剑指offer , 数据结构和算法

剪绳子

题目描述:给你一根长度为n的绳子,请把绳子剪成整数长的m段(m、n都是整数,n>1并且m>1),每段绳子的长度记为k[0],k[1],…,k[m]。请问k[0] x k[1] x … x k[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。

思路:

  • 5<2x3,6<3x3,比6更大的数字我们就更不用考虑了,肯定要继续分。
  • 其次看2和3的数量,2的数量肯定小于3个,为什么呢?因为2x2x2 < 3x3,那么题目就简单了。
  • 直接用n除以3,根据得到的余数判断是一个2还是两个2还是没有2就行了。
Read more »

剑指offer-简单篇

Posted on 2020-06-07 | In 剑指offer , 数据结构和算法

构建乘积数组

题目描述:给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…A[i-1]A[i+1]…A[n-1]。不能使用除法。(注意:规定B[0] = A[1] * A[2] * … * A[n-1],B[n-1] = A[0] * A[1] * … * A[n-2];)

Read more »

SpringBoot

Posted on 2020-06-02 | In Java

日志

SLF4J + logback

如何让系统中所有的日志都统一到slf4j;

1、将系统中其他日志框架先排除出去;

2、用中间包来替换原有的日志框架;

3、我们导入slf4j其他的实现;

Leetcode 167.两数之和 II - 输入有序数组

Posted on 2020-05-27 | In Leetcode

167:给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。

函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。

说明:

  • 返回的下标值(index1 和 index2)不是从零开始的。
  • 你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class Solution {
public int[] twoSum(int[] numbers, int target) {
if(numbers.length < 2) return null;
int[] res = new int[2];
int i = 0;
int j = numbers.length-1;
while(i < j){
if(numbers[i] + numbers[j] == target){
res[0] = i+1;
res[1] = j+1;
i++;
j--;
}else if(numbers[i] + numbers[j] < target){
i++;
}else{
j--;
}
}
return res;
}
}

设计模式-观察者模式

Posted on 2020-05-21 | In 设计模式

适用于广播场景机制 :
• 聊天室程序的创建。服务器创建好后,A,B,C三个客户端连上来公开聊天。A向服务器发送数据,服务器端聊天数据改变。我们希望将这些聊天数据分别发给其他在线的客户。也就是说,每个客户端需要更新服务器端得数据。
• 网站上,很多人订阅了”java主题”的新闻。当有这个主题新闻时,就会将这些新闻发给所有订阅的人。
• 玩CS游戏时,服务器需要将每个人的方位变化发给所有的客户。

Read more »
123>
xNotes

xNotes

🍃

24 posts
9 categories
27 tags
GitHub E-Mail 简书
© 2020 xNotes