
面试常见题
feng之锋
去互联网大厂搬砖!
展开
-
基于链表实现队列(基于Java实现)
title: 基于链表实现队列(基于Java实现)tags: 链表 队列基于链表的队列实现方法的原理:基于链表的实现,跟前面的基于数组实现一样,同样也需要两个指针:head指针和tail指针。它们分别指向链表的第一个结点和最后一个结点。如下图所示,入队时,tail->next = new_node,tail = tail->next; 出队时,head = head->next。具体代码如下:package com.company;//基于链表实现队列public .原创 2020-12-14 21:20:05 · 452 阅读 · 1 评论 -
输入一个链表,反转链表后,输出新链表的表头(ACM格式)(美团面试题)
输入一个链表,反转链表后,输出新链表的表头其实这道题就是一个反转链表的题,但是因为自己不会建立链表,所以特地采用ACM的格式试着编写一下,这也美团给我出的一道实习算法题。public class Main { public static void main(String[] args) { //Scanner in = new Scanner(System.in); //int a = in.nextInt(); //System.out.prin原创 2021-04-02 01:34:40 · 593 阅读 · 0 评论 -
常见的面试算法题:创建几个线程按顺序打印数字或者字母(多线程编程)(套用该模板即可)
常见的面试算法题:创建几个线程按顺序打印数字或者字母(多线程编程)(套用该模板即可)比较典型的题目,如下有:题目一:1、启动3个线程打印递增的数字, 线程1先打印1,2,3,4,5, 然后是线程2打印6,7,8,9,10, 然后是线程3打印11,12,13,14,15. 接着再由线程1打印16,17,18,19,20….以此类推, 直到打印到75。题目二:1、使用5个线程2、五个线程依次打印1A2B…,即第一个线程负责打印1(A、F)等等。类似这种题目,其实面试官就是想要考验一下你的多原创 2021-04-10 22:04:39 · 319 阅读 · 0 评论 -
Java常见的面试算法题:实现两个线程交替打印1到100的数
Java常见的面试算法题:实现两个线程交替打印1到100的数思路:这是涉及到多个线程打印的问题,一定会用到锁的(synchronized),故这就是一个多线程打印的典型案例。代码实现:package Test;public class DoubleThreadPrint { public static int count = 0; public static class MyPrint extends Thread{ //定义一个整型变量来标识线程原创 2021-08-28 20:28:18 · 566 阅读 · 0 评论 -
题目:任意给定一个浮点数,计算这个浮点数的立方根。(基于二分法和牛顿迭代法)(基于Java实现)
题目:任意给定一个浮点数,计算这个浮点数的立方根。(基于二分法和牛顿迭代法)首先,来分析一下这道题,其实在leetcode上做了求解根号3的题之后,对于这种求解立方根的题,基本上都可以利用二分法去进行无穷的逼近。因为像这种根号类型的题目,出题人的想法也是想要你能够用二分法进行求解,但是,如果你数学比较好的话,也可以采用牛顿迭代法来进行求解,因为在高等数学当中求解根号的一般是采用牛顿迭代法进行逼近结果的。这道题也是我今天面试美团的算法题。。。。以下这张图片就是牛顿迭代法的推到理论,其实也不难,平时我们也经原创 2021-04-07 14:44:18 · 1328 阅读 · 2 评论 -
Java实现 String类型的ip与整数之间的相互转换(2021.8.1百度提前批面试题)
题目:实现 String 类型的 ip 与整数之间的相互转化。例如:将 “192.168.0.1” 转换为整数,然后给定这个整数仍然可以得到这个 String 类型的 ip。//将一个字符串的ip地址192.168.1转换成整型的数字,它们是一一对应的关系//核心思想:现将String类型的ip分为一个String数组,然后将其转换为byte数组,然后通过byte数组转换为整数的//将整数转换为String类型的ip,道理也是一样的,同样是需要先转换为byte数组,然后通过byte类型转换为S原创 2021-08-01 18:00:46 · 441 阅读 · 0 评论 -
两种单例模式总结--(饿汉式、懒汉式)(java代码)
两种单例模式总结–(饿汉式、懒汉式)一、饿汉式单例模式代码实现:public class Singleton{ private static final Singleton singleton = new Singleton(); private Singleton(){} public static Singleton getInstance() { return singleton; }}二、懒汉式单例模式原创 2021-08-28 21:47:46 · 804 阅读 · 0 评论 -
死锁是什么?死锁产生的条件?如何避免死锁?以及死锁的示例代码(Java代码)
文章目录一、什么是死锁?二、产生死锁的条件?三、产生死锁的实例代码(java)四、如何避免死锁?一、什么是死锁?下面图片参考 JavaGuide中的内容:死锁的概念:死锁:指的是相互两个线程之间都需要获取对方的资源才能进行下一步,如果每个线程都不肯将自己所持有的资源释放掉,这时就会导致死锁了。二、产生死锁的条件?产生死锁的条件:三、产生死锁的实例代码(java)代码实现:package DeadLock;public class DeadLock { //先定义原创 2021-08-27 16:15:52 · 439 阅读 · 0 评论 -
java中的int、Integer 和 new Integer()的区分和比较
java中的int、Integer 和 new Integer()的区分和比较一、问题提出:1.1、问题一:int a = 2;Integer b = 2;Integer c = new Integer(2);那么请问下面的结果是什么?System.out.println(a == b);System.out.println(b == c);System.out.println(a == c);通过在Java8 中运行上述代码,发现结果分别为:truefalsetrue为什原创 2021-08-12 16:40:20 · 727 阅读 · 0 评论 -
题目:查找数组中的重复数字,要求空间复杂度为O(1)(基于Java实现)
题目:查找数组中的重复数字,要求空间复杂度为O(1)(基于Java实现)题目: 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。要求空间复杂度为O(1)。虽然上述的题目是一道leetcode的简单题–(剑指 Offer 03. 数组中重复的数字),但是在leetcode当中的题目并没有要求空间复杂度为O(1),因此,这道题稍微要比 leetcode 难一点,而且原创 2021-04-07 15:15:25 · 745 阅读 · 1 评论 -
用三个线程实现生产者消费者模型,其中一个线程作为生产者,二个线程作为消费者,生产者随机生产一个时间戳或者字符串,消费者消费这个时间戳,并不能重复消费,并将其打印出来
题目要求:用三个线程实现生产者消费者模型,其中一个线程作为生产者,二个线程作为消费者,生产者随机生产一个时间戳或者字符串,消费者消费这个时间戳,并不能重复消费,并将其打印出来。(这是一道百度面试的算法题)package ProducerAndConsumerDemo;/* * 简单生产者消费者模式(单个生产者和两个个消费者) * 用三个线程实现生产者消费者模型,其中一个线程作为生产者,二个线程作为消费者, * 生产者随机生产一个时间戳或者字符串,消费者消费这个时间戳,并不能重复消费,并将其打印原创 2021-03-29 00:38:32 · 509 阅读 · 3 评论 -
常见面试题:为什么HashMap不是线程安全的呢?(JDK1.7和JDK1.8角度)(看完你就能和面试官笑谈人生了)
title: 常见面试题:为什么HashMap不是线程安全的呢?(JDK1.7和JDK1.8角度)(看完你就能和面试官笑谈人生了)tags: 面试常见题常见面试题:为什么HashMap不是线程安全的呢?(JDK1.7和JDK1.8角度)(看完你就能和面试官笑谈人生了)为什么HashMap不是线程安全的呢?我们在面试的时候,总是知道HashMap是线程不安全,如果你要保证线程安全的话就是用ConcurrentHashMap。但是我们好像从来没怎么没从HashMap的底层原理上去分析HashMap.原创 2021-03-21 15:48:05 · 422 阅读 · 0 评论 -
常见面试题:为什么MySQL索引要用B+Tree呢?(看完你就能和面试官笑谈人生了)
title: 常见面试题:为什么MySQL索引要用B+Tree呢?(看完你就能和面试官笑谈人生了)tags: 面试常见题常见面试题:为什么MySQL索引要用B+Tree呢?(看完你就能和面试官笑谈人生了)为什么MySQL索引要用B+Tree呢?要跟面试官回答该问题,就需要先跟面试官讲讲能够作为MySQL索引的结果有哪些。参考文章:为什么 MySQL索引要用 B+tree以下就是我的回答:我们知道,索引的常用结构有:二叉树、红黑树、Hash表、B-Tree、B+Tree 这几种。1)为什.原创 2021-03-21 11:25:54 · 450 阅读 · 0 评论 -
腾讯面试题:我设计表的时候,数据字段有什么需要注意的地方吗?(看完你就能和面试官笑谈人生了)
title: 腾讯面试题:我设计表的时候,数据字段有什么需要注意的地方吗?(看完你就能和面试官笑谈人生了)tags: 面试常见题腾讯面试题:我设计表的时候,数据字段有什么需要注意的地方吗?(看完你就能和面试官笑谈人生了)我设计表的时候,数据字段有什么需要注意的地方吗?MySQL 数据表设计规范(一)数据库基本设计规范:① 没有特殊要求(即 InnoDB 无法满足的功能如:列存储,存储空间数据等)的情况下,所有表必须使用InnoDB存储引擎。MySQL 5.6 以后默认的为 InnoDB 支.原创 2021-03-21 10:25:19 · 344 阅读 · 1 评论 -
腾讯面试题:char 和 varchar的最大长度是多少,以及他们之间的区别(看完你就能和面试官笑谈人生了)
title: 腾讯面试题:char 和 varchar的最大长度是多少,以及他们之间的区别(看完你就能和面试官笑谈人生了)tags: 面试常见题腾讯面试题:char 和 varchar的最大长度是多少,以及他们之间的区别(看完你就能和面试官笑谈人生了)(一) char 和 varchar的最大长度是多少,以及他们之间的区别varchar与char的区别:char的特点:char表示定长字符串,长度是固定的;如果插入数据的长度小于char的固定长度时,则用空格填充;因为长度固定,所以存.原创 2021-03-21 10:16:24 · 840 阅读 · 0 评论 -
腾讯面试题:数据库中的日志你都了解哪些呢?说一说他们之间的作用与应用(看完你就能和面试官笑谈人生了)
title: 腾讯面试题:数据库中的日志你都了解哪些呢?说一说他们之间的作用与应用(看完你就能和面试官笑谈人生了)tags: 面试常见题腾讯面试题:数据库中的日志你都了解哪些呢?说一说他们之间的作用与应用(看完你就能和面试官笑谈人生了)数据库中的日志你都了解什么?请说一下他们之间的作用以及应用(redo log, bin log, undo log)redo log(重做日志):当有一条记录需要更新,InnoDB 引擎就会把记录写到 redo log 里面,并更新内存。这个时间更新就算完成了.原创 2021-03-21 10:08:38 · 197 阅读 · 0 评论 -
腾讯面试题:创建索引时,你会怎么考虑呢?(看完你就能和面试官谈人生了)
title: 腾讯面试题:创建索引时,你会怎么考虑呢?(看完你就能和面试官谈人生了)tags: 面试常见题腾讯面试题:创建索引时,你会怎么考虑呢?(看完你就能和面试官谈人生了)腾讯面试题:创建索引的时候,你一般会考虑些哪些因素?(按照下面的点去答,你就稳了,哈哈????。)① 适合建立索引的列是出现在where 子句中的列,或者连接子句中指定的列;② 基数较小的类,索引效果较差,没有必要在此列建立索引;③ 使用短索引,如果对长字符串列进行索引,应该指定一个前缀长度,这样能够节省大量索引空间;原创 2021-03-21 00:34:51 · 549 阅读 · 1 评论