自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 超全面试-笔记(java)

class ListNode { int val; ListNode next; ListNode() {} ListNode(int val) { this.val = val; } ListNode(int val, ListNode next) { this.val = val; this.next = next; } }class TreeNode { * int val; * TreeNode left; * .

2021-04-15 20:42:57 1713 2

原创 Hadoop

merge有三种形式:内存到内存;与map端类似,这也是溢写的过程,这个过程中如果你设置有Combiner,也是会启用的,然后在磁盘中生成了众多的溢写文件。调度器根据容量、队列等限制条件,将系统中的资源分配给正在运行的应用程序,在保证容量、公平性和服务等级的前提下,优化集群资源利用率,让所有的资源都被充分利用应用程序管理器负责管理整个系统中的所有的应用程序,包括应用程序的提交、与调度器协商资源以启动ApplicationMaster、监控ApplicationMaster运行状态并在失败时重启它。

2023-07-12 10:03:46 1067

原创 Flink知识点

Flink 是一个框架和分布式处理引擎,用于对无界和有界数据流进行有状态计算。Flink 是大数据领域的分布式实时和离线计算引擎,其程序的基础构建模块是流(Streams)和转换(Transformations),每一个数据流起始于一个或多个 Source,并终止于一个或多个 Sink,数据流类似于有向无环图(DAG)。Flink 提供了诸多高抽象层的 API 以便用户编写分布式任务:DataSet API、DataStream API、Table APIflink特性。

2023-06-30 10:00:39 261

原创 Hive知识点整理

通过数据分层管理可以简化数据清洗的过程,因为把原来一步的工作分到了多个步骤去完成,相当于把一个复杂的工作拆成了多个简单的工作,把一个大的黑盒变成了一个白盒,每一层的处理逻辑都相对简单和容易理解,这样我们比较容易保证每一个步骤的正确性,当数据发生错误的时候,往往我们只需要局部调整某个步骤即可。:Hive是在0.7版本之后支持索引的,在0.8版本后引入bitmap索引处理器,在3.0版本开始移除索引的功能,取而代之的是2.3版本开始的物化视图,自动重写的物化视图替代了索引的功能。兼顾了可靠性和效率。

2023-06-29 11:11:34 227

原创 java-尾插法和头插法创建链表

import java.util.*;class ListNode{ int val; ListNode next; public ListNode() { } public ListNode(int val) { this.val = val; } public ListNode(int val, ListNode next) { this.val = val; this.next = nex

2021-11-13 10:14:58 718

原创 已知前序中序输出后序(java)返回值是数组

例子:前序:1, 2, 3, 4, 5, 6(根左右)中序:3, 2, 4, 1, 6, 5(左根右)后序:3, 4, 2, 6, 5, 1(左右根)1、先说根据前序中序求后序,前序总是沿着根往树的左边一直跑,所以前序遍历的前面肯定是根节点中序则是按照:左—–根—–右 的顺序排列,其中左,右子树按照同样的结构,所以我们可以从前序遍历的根节点入手,迅速定位中序序列的结构中左子树和右子树部分,而后序遍历无非就是:左子树,右子树,访问根。代码如下,root是前序列表中代表根节点的点的下标start

2021-10-19 16:21:22 321

原创 LRUCache-Java实现

package com.test;/** * @author yourname * Created on */public class LRUCache { // 相当于自己定义一个带时间限制的treeMap 比较大小通过最后一次访问时间来判断 // map的底层显然是用链表实现的 /* 1.put操作 遍历队列,看看是否已经存在这个key 如果已经存在,则找到位置并更新value,然后将该结点移至

2021-09-09 15:35:44 281

原创 常用静态资源导入依赖

<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> <dependency>..

2021-08-30 10:31:26 146

原创 给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。(Java)

leetcode 680思路判断回文串显然是用双指针的,i从前往后遍历,j从后往前遍历。难点就是怎么去判断删除一个元素后的字符串是不是回文串,我提供一个思路:以"abdda"这个串为例,此时i指向’b’,j指向’d’,发现不对了。但是有一次删除的机会,我们自己写几个case其实就能发现,此时子串范围为(i+1, j)或(i, j-1)的俩子串只要有任意一个是回文串,则结果就是回文串,否则就不是。package t2;public class 验证回文字符串2 { public

2021-06-30 15:44:47 1178

原创 判断二叉树是否是完全的BST(java)

import java.util.ArrayList;public class 判断二叉树是否是完全的BST { private int preValue = Integer.MIN_VALUE; public TreeNode create(){ TreeNode t1 = new TreeNode(1,null,null); TreeNode t2 = new TreeNode(9,null,null); TreeNode t3 =.

2021-05-31 15:52:39 141

原创 回溯问题-java

1.全排列给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案import java.util.ArrayList;import java.util.List;public class Solution {public void persum(int []nums){ //数组长度 int len=nums.length; //用一个boolean数组判断位置是否可用 boolean user[]=n

2021-05-19 16:05:06 173 2

原创 删除排序链表中的重复元素 II-(java)

leetcode82存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除链表中所有存在数字重复情况的节点,只保留原始链表中 没有重复出现 的数字。返回同样按升序排列的结果链表。public class test { public ListNode deleteDuplicates(ListNode head) { if(head==null || head.next==null) return head;

2021-05-11 22:48:09 116

原创 最小覆盖字串

package test;public class 最小覆盖子串 { public static String minWindow(String s, String t) { if (s == null || s == "" || t == null || t == "" || s.length() < t.length()) { return ""; } //用来统计t中每个字符出现次数 int[]

2021-04-30 10:27:50 108

原创 实现两数之和(Java)

一组解和多种解时间复杂度为O(n)import java.util.ArrayList;import java.util.HashMap;import java.util.Map;public class 两数之和 { //找一组解 public int[] twoSum(int[] nums, int target) { Map<Integer, Integer> hashtable = new HashMap<Integer, Integer

2021-04-30 10:19:06 248

原创 二叉树的创建以及遍历

import java.util.*; class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val){ this.val=val; } public TreeNode(int val,TreeNode left,TreeNode right){ this.val=val; this.left=left; .

2021-04-17 16:45:58 97

原创 二叉树的创建(Java)

package test.Tree;import java.util.LinkedList;import java.util.List;//把一个数组的值存入二叉树中,然后进行3种方式的遍历public class Tree_int { private int[] array = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; private static List<Node> nodeList = null; //内部类结点 privat

2021-04-17 16:16:33 226

原创 二叉树的创建【字符】(java)

package test.Tree;import java.util.LinkedList;import java.util.Queue; class Node<T> { T val; Node left; Node right; public Node() { } public Node(T val) { this.val = val; } public Node(T val, Node left,

2021-04-17 10:42:01 204

原创 最长公共子序列(java)

输入“hello” ,“heeo”输出heo public static void main(String[] args){ //两个测试串 String s1 = "hello"; String s2 = "hleeo"; System.out.println(maxPubLength(s1, s2)); } public static int maxPubLength(String s1,String s2

2021-04-13 20:54:19 531

原创 反转链表(Java)

package test;class Node{ int data; Node next; public Node (){ } public Node(int data) { this.data = data; } public Node(int data,Node next){ this.data = data; this.next = next;}}public class 反转链

2021-04-12 21:21:12 94

原创 最长公共字串(JAVA实现)

最长公共字串给定两个字符串str1和str2,输出两个字符串的最长公共子串题目保证str1和str2的最长公共子串存在且唯一。输入“1AB2345CD”,“12345EF”输出“2345”public String LCS (String str1, String str2) { int m = str1.length(), n = str2.length(); int[][] dp = new int[m + 1][n + 1]; in

2021-04-12 10:14:17 1479

原创 集合划分

1.问题描述:n个元素的集合{1,2,.,n }可以划分为若干个非空子集。例如,当n=4 时,集合{1,2,3,4}可以划分为15个不同的非空子集如下:{1},{2},{3},{4}}, {{1,2},{3},{4}},{{1,3},{2},{4}}, {{1,4},{2},{3}},{{2,3},{1},{4}}, {{2,4},{1},{3}},{{3,4},{1},{2}}, {{1,2},{3,4}},{{1,3},{2,4}}, {{1,4},{2,3}},{{1,2,3},{4}}

2020-11-29 17:46:49 2955

原创 java-异常详解

粉红色的是受检查的异常(checked exceptions),其必须被try{}catch语句块所捕获,或者在方法签名里通过throws子句声明.受检查的异常必须在编译时被捕捉处理,命名为 CheckedException 是因为Java编译器要进行检查,Java虚拟机也要进行检查,以确保这个规则得到遵守.绿色的异常是运行时异常(runtime exceptions),需要程序员自己分析代码决定是否捕获和处理,比如 空指针,被0除…而声明为Error的,则属于严重错误...

2020-11-28 09:18:19 98

原创 链表逆置-头插法创建

#include <stdio.h>#include <stdlib.h>struct ListNode { int data; struct ListNode *next;}ds;struct ListNode *createlist();int main(){ struct ListNode *p, *head = NULL; head = createlist(); for ( p = head; p != NULL; p

2020-11-28 09:13:54 95

原创 数组逆置问题

数组逆置问题问题描述设a[0:n-1]是有n个元素的数组,k(0=<k=<n-1)是一个非负整数。试设计一个算法将子数组 a[0:k-1]与a[k:n-1]换位。要求算法在最坏情况下耗时O(n),且只用到O(1)的辅助空间。#include <stdio.h>void swap(int a[],int low,int high);void swap(int a[],int low,int high){ int i,j; for(i=low,j=high;i<j;

2020-11-27 15:45:32 1038

原创 动态规划求最大路径-三角形最大路径和矩阵最大路径

1.数字三角形求最大路径问题:给定一个由n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形的顶至底的一条路径,使该路径经过的数字总和最大。73 88 1 02 7 4 44 5 2 6 5对于给定的由n行数字组成的数字三角形,编程计算从三角形的顶至底的路径经过的数字和的最大值。数据输入:由文件input.txt提供输入数据。文件的第1行是数字三角形的行数n,1<n<100。接下来n行是数字三角形各行中的数字。所有数字在

2020-11-27 10:00:53 1643

原创 HashMap 和 Hashtable详解

HashMap 和 Hashtable**1. 关于HashMap的一些说法:****2. Hashtable和HashMap的区别:**在这里帮大家总结一下hashMap和hashtable方面的知识点吧:1. 关于HashMap的一些说法:a) HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结合体。HashMap的底层结构是一个数组,数组中的每一项是一条链表。b) HashMap的实例有俩个参数影响其性能: “初始容量” 和 装填因子。c) == Hash

2020-11-25 21:09:54 243

原创 文件上传和下载

【文件上传的注意事项】为保成服务器安全,上传文件应该放在外界无法直接访问的目录下,比如 WEB-INF目录下项目2为防止文件覆盖的现象发生,要为上传文件产生一个唯一的文件名   时戳   UUID  MD5   位运算要限制上传文件的最大值限制上传文件的类型,收到文件名是,判断后缀名是否合法【需要用到的类】ServletFileUpload负责处理上传的文件数据,并将表单中每个输入项封装成一个File

2020-11-24 17:18:39 190

原创 getParamete与getAttribute(),request.getSession().getAttribute

getParameter是获取表单提交的数据,或者post和get拼接提交的。获得的类型是String类型的。request.getSession().getAttribute是获取session中的数据,和session.setAttribute搭配使用。获取的是Object类型。项目流程...

2020-11-24 16:59:29 671

原创 count(1)、count(*)、count(列名)的区别

含义:1、count() :统计所有的行数,包括为null的行(COUNT()不单会进行全表扫描,也会对表的每个字段进行扫描。而COUNT(‘x’)或者COUNT(COLUMN)或者COUNT(0)等则只进行一个字段的全表扫描)。2、count(1):计算一共有多少符合条件的行(其实就可以想成表中有这么一个字段,这个字段就是固定值1,count(1),就是计算一共有多少个1…同理,count(2),也可以,得到的值完全一样,count(‘x’),count(‘y’)都是可以的。count(*),执行时会

2020-11-24 10:17:21 4794

原创 创建一个无重复值的单链表

项目1删除链表中的重复值,首先的要有一个岗哨,及第一次循环最起始的阶段的值作比较,删除一个元素要有一个前驱,一个后继,所以得必须有两个指针同时遍历,外加一个岗哨做判断,一共三个指针。#include <stdio.h>#include <stdlib.h>typedef struct note{ int data; struct note *next;}elemsn;elemsn *create(int b[],int n);void print(elemsn *.

2020-11-24 10:07:08 576

原创 数组前后交换

数组前后交换项目1假设数组a有n个元素,k(0<=k<=n-1),是一个非负整数。设计一个算法将子数组a[0:k-1]与a[k:n-1]换位。要求最坏情况下时间复杂度为O(n),空间复杂度为O(1)详解:很显然这个要在时间复杂度为O(n),空间复杂度为O(1)的情况下不能开辟新的数组且只能用一层循环这时候,这个时候,我们可以借用一个函数,交换数组内的元素,这样就可以解决问题了。#include <stdio.h>void swap(int a[],int n,int

2020-11-24 09:00:40 1886

原创 Session详解

什么是Session:服务器会给每一个用户(浏览器)创建一个Seesion对象;一个Seesion独占一个浏览器,只要浏览器没有关闭,这个Session就存在;用户登录之后,整个网站它都可以访问!–> 保存用户的信息;保存购物车的信息……Session和cookie的区别:Cookie是把用户的数据写给用户的浏览器,浏览器保存 (可以保存多个)Session把用户的数据写到用户独占Session中,服务器端保存 (保存重要的信息,减少服务器资源的浪费)Session对象由服.

2020-11-16 22:40:29 1955

原创 分治和减治算法——归并排序

贪心:每步最优解回溯(试探):得到所有解分治(二分法):将大问题划分成小问题来解决减治(递归):不断的缩小问题规模得到解动态规划:整体最优解1.分支算法分:划分子问题(将一个问题划分成若干个独立的,具有共性的问题)治:求解每个子问题(递归过程),由词构建整个问题的解步骤:分解子问题每个子问题与原问题相似子问题规模太小(什么时候知道规模较小?【有解】)合并:将每个子问题的解合并成原问题的解适用场景在一个较小的规模上得到解该问题具有最优子结构每个子问题的解合成

2020-11-08 23:49:21 242

原创 请你聊聊重定向和转发的区别?

相同点页面都会实现跳转不同点请求转发的时候,url不会产生变化重定向时候,url地址栏会发生变化;

2020-11-08 22:52:07 89

原创 回溯算法之马踏棋盘

马踏棋盘问题描述:将马放到国际象棋的88棋盘上的任意指定方格中,按照马的走棋规则将“马”进行移动,要求每个方格进入且只进入一次,走遍棋盘上的64个方格,将数字1,2,3…,64依次填入一个88的方阵。递归我在这里用了一个10*10的表格而不是8*8的表格。为什么这样用呢?我主要考虑到了边界问题,马一共有8中踏出方式,可是到了边界时 #include <stdio.h>#include<stdlib.h>// 棋盘 int chess[12][1

2020-11-08 22:49:12 204

原创 回溯算法 - 八皇后问题找所有解递归和非递归

八皇后问题描述1.什么是八皇后问题在8×8格的国际象棋上摆放8个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。高斯认为有76种方案。1854年在柏林的象棋杂志上不同的作者发表了40种不同的解,后来有人用图论的方法解出92种结果。即在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上 解析算法:    1.首先我们并不需要一开始就接设计8*8的二维数组(这个二维数

2020-10-25 20:36:31 437

转载 Linux常用命令大全

Linux常用命令大全(非常全!!!)系统信息arch 显示机器的处理器架构uname -m 显示机器的处理器架构uname -r 显示正在使用的内核版本dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)hdparm -i /dev/hda 罗列一个磁盘的架构特性hdparm -tT /dev/sda 在磁盘上执行测试性读取操作cat /proc/cpuinfo 显示CPU info的信息cat /proc/interrupts 显示中断cat /proc/me

2020-10-25 18:53:34 345

原创 JDBC中Statement对象与PreParedStatement

jdbc中statement对象用于向数据库中发送sql语句,想完成对数据库的增删改查,只需要想

2020-10-19 19:36:51 184

原创 IDEA连接MySQL8.0问题

Server returns invalid timezone. Go to ‘Advanced’ tab and set ‘serverTimezone’ property manually.这是由于IDEA连接数据库时报错Server returns invalid timezone. Go to ‘Advanced’ tab and set ‘serverTimezone’ property manually.(服务器返回无效的时区。 转到“高级”选项卡,然后手动设置“ serverTimezone

2020-10-16 08:14:43 378

原创 数据库的完整性概念与数据库的安全性概念有什么区别和联系?

数据的完整性和安全性是两个不同概念数据库的完整性是指数据的正确性和相容性。数据库的安全性是指保护数据库,以防止不合法的使用造成的数据泄密、更玫或破坏。其相同点是两者都是对数据库中的数据进行控制,各自所实现的功能目标不同。...

2020-06-13 10:27:17 11712 1

空空如也

空空如也

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

TA关注的人

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