面试宝典
那些很冒险的梦丶
这个作者很懒,什么都没留下…
展开
-
滚蛋吧!算法题-大数加法
大数加法:以字符串的形式读入两个数字,编写一个函数计算它们的和,以字符串形式返回。(字符串长度不大于100000,保证字符串仅由'0'~'9'这10种字符组成)/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 计算两个数之和 * @param s string字符串 表示第一个整数 * @param t string字符串 表示第二个整数 * @return string字符串 */ pub原创 2021-05-13 16:36:15 · 1308 阅读 · 2 评论 -
滚蛋吧!算法题-两数相加
两数相加:给你两个非空 的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0开头比如:{2,4,3} + {5,6,4} = {7,0,8}public ListNode addTwoNumbers(ListNode l1, ListNode l2) { ListNode cur = new ListNode(0); ...原创 2021-04-30 14:39:37 · 1204 阅读 · 0 评论 -
滚蛋吧!算法题-排序
排序:给定一个数组,请你编写一个函数,返回该数组排序后的形式。[5,2,3,1,4]=>[1,2,3,4,5]冒泡排序:public int[] MySort (int[] arr) { for(int i = 0 ; i<arr.length-1; i++){ for(int j = 0;j<arr.length-i-1; j++){ if(arr[j]>arr[j+1]){ .原创 2021-04-30 14:26:49 · 1221 阅读 · 0 评论 -
滚蛋吧!算法题-合并
合并两个有序链表:将两个有序的链表合并为一个新链表,要求新的链表是通过拼接两个链表的节点来生成的,且合并后新链表依然有序。输入{1},{2} 输出{1,2} /** * * @param l1 ListNode类 * @param l2 ListNode类 * @return ListNode类 */ public ListNode mergeTwoLists (ListNode l1, ListNode l2) { ..原创 2021-04-28 17:34:41 · 144 阅读 · 1 评论 -
滚蛋吧!算法题-环
判断给定的链表中是否有环。如果有环则返回true,否则返回false。你能给出空间复杂度的解法么?原创 2021-04-28 17:28:41 · 102 阅读 · 1 评论 -
滚蛋吧!算法题-反转
反转链表:输入一个链表,反转链表后,输出新链表的表头。输入:{1,2,3} 输出:{3,2,1}public ListNode ReverseList(ListNode head) { ListNode curr = head; ListNode prev = null; while(null != curr){ ListNode temp = curr.next; curr.next = pr...原创 2021-04-28 17:08:19 · 131 阅读 · 0 评论 -
MySQL面试总结
1、什么是索引?索引是特殊的数据结构。类似图书的目录,在大数据量情况下,能快速的检索数据库中的数据。2、Mysql索引是用的哪种数据结构主要有两种数据结构:2.1:Hash索引和B+Tree索引 一般用InnoDB默认就是B+Tree。3、B+ Tree的索引模型和Hash索引比较起来有什么优缺点吗?Hash索引底层是Hash表,Hash表是一种key-value存储数据的结构,数据存储是无序的,所以Hash索引只适合等值查询场景。对于区间查询是无法通过索引进行查询、无法利用索引排序、就转载 2021-01-06 16:42:15 · 133 阅读 · 1 评论 -
kafka知识总结
Kafka分区:分区策略:1、轮训策略:最平均 2、随机。3、key 4、自定义分区Kafka压缩:Kafka消息层次分两次:消息集合 消息 一个消息集合中包含若干条日志项,日志项才是真正封装消息的地方。producer压缩 ->broker保持()->Consumer解压缩。Kafka无消息丢失配置怎么实现:1、什么是Kafka消息丢失。已提交状态消息的消息丢...原创 2019-12-03 09:56:18 · 223 阅读 · 0 评论 -
Kafka
Kafka基本概念:1、Producer:消息和数据的生产者。向Kafka的一个Topic发布消息的进程/代码/服务2、Consumer:消息和数据的消费者。订阅数据(Topic)并且处理其发布的消息的进程/代码/服务3、Consumer Group:对于一个Topic,会广播给不同的group,但一个group中只有一个Consumer可以消费该消息。4、Broker:Kafka...原创 2019-06-18 10:59:12 · 160 阅读 · 0 评论 -
对称加密算法
什么是对称加密算法?加密秘钥和解密秘钥是相同的。解密是加密算法的逆运算DESDES:data Encryption standard 数据加密标准,秘钥长度短。并且现已经被破解,不安全了,不推荐使用。...转载 2019-06-14 11:25:24 · 171 阅读 · 0 评论 -
ArrayList源码解析
ArrayList底层基于数组实现的,默认长度是10,主要分析下当超过这个长度时如何做的数组扩容和一些常用的方法的实现。add(E e)public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.i...原创 2019-04-09 16:19:02 · 122 阅读 · 0 评论 -
HashMap完全解析
1.为什么用HashMap?HashMap是一个散列桶(数组和链表),它存储的内容是键值对(key-value)映射 HashMap采用了数组和链表的数据结构,能在查询和修改方便继承了数组的线性查找和链表的寻址修改 HashMap是非synchronized,所以HashMap很快 HashMap可以接受null键和值,而Hashtable则不能(原因就是equlas()方法需要对象,因...原创 2018-11-30 11:29:44 · 260 阅读 · 0 评论 -
HashSet源码解析
前言:随着工作年限的提升,常用的集合类,不能仅仅会用,需要解析下其内部实现原理。今天就来看一下HashSet内部的秘密;源码:public class HashSet<E>extends AbstractSet<E> implements Set<E>, Cloneable, java.io.Serializable{ stati...原创 2019-04-08 11:01:11 · 93 阅读 · 0 评论 -
经典匿名类谜题
经典匿名类谜题转载 2018-03-30 15:36:01 · 244 阅读 · 0 评论 -
SpringBoot亮点
1、自动化配置SpringBoot最核心就是自动化配置。先分析下@SpringBootApplication注解。@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Inherited@SpringBootConfiguration @EnableAutoConfiguration@C...原创 2019-04-04 10:56:09 · 779 阅读 · 0 评论