自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (1)
  • 收藏
  • 关注

原创 第k大数字

找第k大数字三种解决方法:1.暴力,选择/冒泡,这里以冒泡为例;时O(n^2),空O(1)public int findKthLargest(int[] nums, int k) { int n = nums.length; for (int i = 0; i < k; i ++) { for (int j = 0; j < n - i - 1; j ++) { if(nums[j] > nums[

2021-10-09 14:25:59 146

原创 链表相关面试题

1.两个链表的第一个重合节点给定两个单链表的头节点 headA 和 headB ,请找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null我们希望将两个链表右对齐,这样就可以一个一个走,如果有一样的就return这个点,那么怎么右对齐呢?可以这样做:让两个指针走LA+LB的路程,这样两个链表就右对齐的;接下来开始遍历,如果没有重合点则必会同时走到null,如果有则必须同时走到第一个重合点。ListNode *getIntersectionNode(ListNode *headA, L

2021-10-02 12:10:34 141

原创 树相关面试题

1.层次遍历二叉树就是用队列嘛,唯一可能有点问题的就是怎么一层一个数组;每次bfs时,记录一下队列中的元素个数,就表示了这一层有几个结点,然后遍历下一层时指定遍历次数达到本层的结点数目即可,如此反复。ArrayList<ArrayList<Integer>> res = new ArrayList<>(); Deque<TreeNode> q = new LinkedList<>(); if(root == nu

2021-10-01 21:05:44 290

原创 顺时针旋转数组

顺时针旋转一个数据先左右再按次对角线反转public class demo2 { public static void main(String[] args) { int n = 3; int[][] a = new int[n][n]; int counter = 1; for(int i = 0; i < n; i ++) { for(int j = 0; j < n; j ++) {

2021-09-15 20:44:02 104

原创 vmware网络配置

这网络配置问题真让人抓狂。。。配置vmware网络时遇到的问题的解决:1.没有vmwarenet8:在编辑 -> 虚拟网络编辑器 -> 勾选将主机虚拟适配器连接到此网络 -> 应用 -> 确定2.配置网络(虚拟机屏幕右下角) -> 自定义 -> net8 -> 确定;(打开虚拟机右上角的网络就可以看到有了ipv4的地址(自动获取))在主机上的vmnet8配置网络:右击网络 -> 打开网络和Internet设置 -> 更改网络适配器 -> 打

2021-07-20 10:50:24 101

原创 Potions And c++读取二维字符数组

This is the hard version of the problem. The only difference is that in this version n≤200000. You can make hacks only if both versions of the problem are solved.There are n potions in a line, with potion 1 on the far left and potion n on the far right.

2021-07-04 21:14:38 174

原创 二叉树的层次遍历

二叉树的层次遍历:给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。示例:二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层序遍历结果:[ [3], [9,20], [15,7]]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/binary-tree-level-order-traver

2021-07-03 20:24:23 89

原创 bfs常见题

我之前做迷宫问题就比较偏向于dfs,因为容易想,就搜,撞到墙了就回到到上一步;但是用dfs会更快些;当每条边的权重相等时,用dfs会比较快,因为它是一层一层的向外扩,所以第一次找到的终点即使到达的最短所需路径迷宫问题:给定一个 n×m 的二维整数数组,用来表示一个迷宫,数组中只包含 0 或 1,其中 0 表示可以走的路,1 表示不可通过的墙壁。最初,有一个人位于左上角 (1,1) 处,已知该人每次可以向上、下、左、右任意一个方向移动一个位置。请问,该人从左上角移动至右下角 (n,m) 处,至少

2021-07-02 12:04:04 145

原创 亚信科技中国有限公司实习面试(长春)

2021.6.25:我大二期末,假期在家没意思,就想出去实习一下。我主要面试实习的是web后端开发;问的问题都是按照简历上问的,简历上主要就是我得过哪些奖学金,我自己开发的网站功能具体都是怎么实现的,我会哪些技术;问:java se都学了什么?答:集合,线程,异常,包装类。。。(然后分别展开了说了一下)问:js中或jQuery是怎么获取参数的和文本输入框的内容的?答:当时有点懵住了,我说可以首先获取url,然后再进行按"?"字符串分割,再遍历就能找到。获取文本框我忘了。。(用jQuery直接.va

2021-06-29 10:12:41 1232

原创 删除链表中重复元素

给出一个升序排序的链表,删除链表中的所有重复出现的元素,只保留原链表中只出现一次的元素。例如:给出的链表为1 \to 2\to 3\to 3\to 4\to 4\to51→2→3→3→4→4→5, 返回1\to 2\to51→2→5.给出的链表为1\to1 \to 1\to 2 \to 31→1→1→2→3, 返回2\to 32→3.链表的题都不难,不涉及什么特别复杂的算法,主要就是想明白,交替的过程。只需在最前面设置一个pre,前面两个指针找重复的,如果p,q的val相等,则q一直向前,直到不

2021-06-21 23:40:12 263 2

原创 最长上升子序列2

给定一个长度为 N 的数列,求数值严格单调递增的子序列的长度最长是多少。输入格式第一行包含整数 N。第二行包含 N 个整数,表示完整序列。输出格式输出一个整数,表示最大长度。数据范围1≤N≤100000,−109≤数列中的数≤109输入样例:73 1 2 1 8 5 6输出样例:4这是最长上升子序列的扩展,按照那道题的思路是解决不了的,因为n^2的时间复杂度。所以要更快,解决这道题要用到二分,动态规划,贪心,主要体现的是贪心。思路:eg:3,1,2,1,8,5,6

2021-05-21 21:46:20 297

原创 二分算法实质

dxc实在是太列害了,之前我对二分理解的层面仅仅就在二分查找上,导致我碰见一道新的用二分解题的题时就模棱两可,其实就是不理解,没理解到底是什么意思。有序可以用二分,但是二分不一定要在有序时才能用其实二分的实质是 一组数据分为两个不同的“状态”,通过这两个状态我们就可以一半一半的缩小范围,而且我们用二分找的往往就是一个边界,要么是左边界要么是右边界 仅仅理解这句话没用要应用到具体中去给定一个按照升序排列的长度为 n 的整数数组,以及 q 个查询。对于每个查询,返回一个元素 k 的起始位置和终止位置(

2021-05-21 18:01:39 192

原创 黑马旅游网总结

跟着老师学了很久,非常感谢老师!跟着老师做完了旅游网的项目,在这里总结一下遇到的一些小问题和解决。html的servlet路径直接写名字就行,不用写’/’,在服务器运行起来就会访问到不用将一个jquery对象用var接着,var就是js对象了,其起不到jquery对象的作用了对普通用户来说,我们都是用html来做前端,因为它比较快;而xx管理系统,这种对于内部人员的,我们用的是jsp。在异步提交的servlet中response是没有用的,因为是异步提交service层的方法可以让他一个方法中调

2021-05-14 17:19:15 472

原创 0-1背包问题系列

1.背包问题问题描述:有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i 件物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。输入格式第一行两个整数,N,V,用空格隔开,分别表示物品数量和背包容积。接下来有 N 行,每行两个整数 vi,wi,用空格隔开,分别表示第 i 件物品的体积和价值。输出格式输出一个整数,表示最大价值。数据范围0<N,V≤10000<vi,wi≤1

2021-05-02 17:21:02 140

原创 组合总和4

问题描述给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target 。请你从 nums 中找出并返回总和为 target 的元素组合的个数。题目数据保证答案符合 32 位整数范围。1 <= nums.length <= 2001 <= nums[i] <= 1000nums 中的所有元素 互不相同1 <= target <= 1000这道题其实思想不难,回溯的写法一下子就写出来了。但是很不幸,记忆化搜索的方法提交他都没过//普通递归

2021-04-24 17:35:28 113

原创 leetcode91.解码方法

题目: 一条包含字母 A-Z 的消息通过以下映射进行了 编码 :'A' -> 1'B' -> 2...'Z' -> 26要 解码 已编码的消息,所有数字必须基于上述映射的方法,反向映射回字母(可能有多种方法)。例如,“11106” 可以映射为:“AAJF” ,将消息分组为 (1 1 10 6)“KJF” ,将消息分组为 (11 10 6)注意,消息不能分组为 (1 11 06) ,因为 “06” 不能映射为 “F” ,这是由于 “6” 和 “06” 在映射中并不等价。

2021-04-22 00:07:17 89

原创 存在重复元素3

题目:给你一个整数数组 nums 和两个整数 k 和 t 。请你判断是否存在 两个不同下标 i 和 j,使得 abs(nums[i] - nums[j]) <= t ,同时又满足 abs(i - j) <= k 。如果存在则返回 true,不存在返回 false。这个题我可真是想了很久,这种用TreeSet的题之前就遇到过,但是我用别的方法也解决了。这道题就不行了。得接收自己不会的新鲜事务,很多都是有用的。这道题我们可以用滑动窗口来解决:方法一:遍历数组,在一个大小为k滑动窗口中,我们

2021-04-19 09:31:03 87

原创 去掉数组中的重复元素

问题描述:找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。开始我想的是用map的方式解决,但是结果相对较慢,所以看别人的思想,发现这个方法也挺好的,原地修改。思想:题中已说明所有数字在0~n-1之间,所以我们遍历数组,如果i != nums[i]就让其一直将索引为i和nums[i]交换,直到相等,当我们交换过程中遇到了相等的情况的话,那么

2021-04-16 15:56:23 338

原创 HouseRobber 打家劫舍

这道题我在一年前写过,但是时间太长忘了。。。当时还刚学动态规划呢;经过两个小时左右的回忆、优化,我又想起来了,并且在原有基础上又扩展了一步。首先从HouseRobber1开始,最原始的代码解决方案那肯定是:private int dfs(int index, int[] nums) { if(index >= nums.length) return 0; int res = 0; for(int i = index; i < nums.len

2021-04-15 17:29:54 105

原创 2021-01-21

其实这道题一点都不难,只不过我对c++的语法不熟悉,很是收益很多的,比如string,pair,输入等等#include <string>#include <vector>#include <iostream>#include <algorithm>using namespace std;int cmp(pair<string, int> p1, pair<string, int> p2) { return p1.

2021-01-21 16:47:06 54

原创 Java实现+讲解红黑树

一、在讲解红黑树之前,我们要先知道一个树叫:”2-3树“每一个东西的诞生都是因为之前的方法无法满足某些需求了,所以新的东西被研发出来了。首先我们看这个例子:向二叉树中插入9,8,7,6,5,4,3,2,1。如果这样插入的话,那么可以说这就不是二叉树了,这是一个链表,因为后面插入的数据都比前一个小,那么就一直是左子树。二叉树之所以被发明出来就是为了查找快,但是这种情况查询的速度就不行了,于是,我们想:能不能解决这样的问题呢?所以有了2-3树,(一个结点有一个子树就叫它几杠结点,在2-3树中,可以一个结点

2020-07-21 12:40:45 283

原创 数据库总结

一、mysql服务启动/关闭:(它是只运行在我们后台的,看不见)1.手动:(low)点击我的电脑–>管理–>服务–>找到mysql鼠标右键控制2.(好点)cmd–>services.msc 打开服务窗口3.(屌!)cmd(以管理员身份进入)–>net stop xxx(mysql)/net start xxx(mysql)====================================================二、登录:mysql -u+账号 -p+密

2020-06-19 13:27:37 223

原创 当数组作为函数参数传递时,其会退化成指针

前言:c++基础知识,数组和指针,sizeof。遇到的问题今天在看插入排序,在我自己写的时候,我想使用类似于java获取数组长度的方法,结果经过查资料发现没有,于是我想到了sizeof,整个数组的字节长度除以某一个数组的值(eg:数组的第一个数)的长度,就是数组的长度,于是我把它写成了一个函数,但是问题来了:它返回的数字是既然是2!?,而且无论我传递的数组里面有几个值或是没有值,也返回2。(我用的是整型(int)的数组)int length(int arr[]){ return sizeof

2020-06-07 13:06:58 1176 3

原创 数据库事务的四大特征、自动/手动提交、事务的隔离级别

什么是事务?事务:被事务修饰的一系列的操作看成‘一个操作’,这些操作要么同时成功,要么同时失败。eg:德玛西亚给拉克丝转500元钱:1.德玛西亚的余额减5002.拉克丝的余额加500分析:但如果在一、二部之间出错了,那么第一步就会成功而第二部不会成功,那这500元钱不就没了嘛,显然这样不现实,这种情况下用事务就很合适.在实现代码前,我们先学习几个sql语句:1.开启一个事务-------START TRANSACTION;2.回滚-----------------ROLLBACK;

2020-05-12 13:26:19 959

原创 多表查询:内连接、外连接、子链接查询

前言:多表查询是非常重要的!其实就是多张表一起查询(当然是有一定条件的查询)引入首先我们先建立两个表:CREATE TABLE DEPARTMENT ( DEP_ID INT PRIMARY KEY AUTO_INCREMENT, -- 主键 DEP_NAME VARCHAR(20));CREATE TABLE EMPLOYEE ( ID INT PRIMARY KEY AU...

2020-05-10 10:42:22 2149

原创 数据库前三大范式

前言:一共有六个范式,在此文章中只学前三个,学会这前三个,在正常的一般的工作中等等就够用了。范式对应的英文:Normal Form,简称NF。范式:在设计数据库时需要遵守的几个规范,可以在设计完数据库后看一看这几个范式,验证一下设计的数据库是否合理。范式的作用:在设计数据库时我们如果遵循了这三大范式,那么我们的数据库表就会非常的合理。(越高的范式数据库冗余越小)第一范式...

2020-05-05 11:36:26 393

travel-1.0-SNAPSHOT.zip

学完了黑马的1000集,跟着老师做了一个旅游网的项目,其实就是ajax和json等等的整体应用,收益匪浅,谢谢老师。我把这个项目大体上改了样子,这个不要钱,需要的兄弟自取~

2021-05-14

空空如也

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

TA关注的人

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