【225-Implement Stack using Queues(用队列实现栈操作)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】代码下载【https://github.com/Wang-Jun-Chao】原题 Implement the following operations of a stack using queues. push(x) – Push element x onto stack. pop() – Removes the element on top of the stack. top() – Get the top element. empty() – Return whether the stack is empty. Notes: You mus...
Java基本类型2019-11-03 19:03:48 by冲冲 1、两个float型相减丢失精度,如何解决?使用BigDemical装饰器模式publicclass Test {publicstaticvoid main(String[] args) {float a = 2.030944f;float b = 1.001085f;System.out.println(a - b);// 1.0298591BigDecimal c = new BigDecimal(Float.toString(a));BigDecimal d = new BigDecimal(Float.toString(b));BigDecimal resultSub = c.subtract(d); //减法BigDecimal resu...
基本表结构: student(sno,sname,sage,ssex)学生表 course(cno,cname,tno) 课程表 sc(sno,cno,score) 成绩表 teacher(tno,tname) 教师表 1、查询课程1的成绩比课程2的成绩高的所有学生的学号select a.sno from (select sno,score from sc where cno=1) a, (select sno,score from sc where cno=2) b where a.score>b.score and a.sno=b.sno 2、查询平均成绩大于60分的同学的学号和平均成绩select a.sno as "学号", av...
1.什么是JavaJava是一门面向对象的高级编程语言,不仅吸收了C++语言的各种优点,比如继承了C++语言面向对象的技术核心。还摒弃了C++里难以理解的多继承、指针等概念,,同时也增加了垃圾回收机制,释放掉不被使用的内存空间,解决了管理内存空间的烦恼。因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。面试手册PDF下...
作为一个后端程序员,网络连接这块是一个绕不过的砍,当你在做服务器优化的时候,网络优化也是其中一环,那么作为网络连接中最基础的部分-TCP连接你了解吗?今天我们来仔细看看这个部分。TCP建立连接-三次握手详解客户端和服务器还未建立连接,但服务器一般处于listen状态客户端主动建立连接,向服务器发送SYN报文,客户端变为SYN_SENT状态服务器收到客户端发送的报文,也回了一个SYN报文,包含了一个ack。此时,服务器变为SYN_RCV...
【101-Symmetric Tree(对称树)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题 Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center). For example, this binary tree is symmetric: 1/ 2 2/ \ / 3 4 4 3 But the following is not: 1/ 2 2\ 3 3 Note: Bonus points if you could solve it both recursively and iteratively.题目大意...
2014年9月7日今天开启阅读了这本书,中断了原计划中算法中级层次的系统性训练,我觉得先看看面试题吧。先给这本书A掉再说。阅读了一天,大概阅读了一半,有点失望,因为这本书讲解的面试都是基础中的基础,我看着都着急,作者很难深入系统层次的去谈论技术,都是一些表面的文章。不过我给大家整理了一些比较细节的东西。第五章开始吧:-----------------------------------------------------classLoader知识。整体调用用到的是父类...
【070-Set Matrix Zeroes(矩阵置零)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题 Given a m x n matrix, if an element is 0, set its entire row and column to 0. Do it in place. 题目大意 给定一个m*n的矩阵,如果某个位置是0。将对应的行和列设置为0。 解题思路 先对矩阵进行扫描,标记要进行置0的行和列,对要进行置0的行在第0列上进行标记,对置0的列在第0行上进行标标记。同时还要两变量记录...
1. 接口和抽象类的区别抽象类可以存在普通成员函数,而接口中只能存在public abstract方法抽象类中的成员变量客户是各种类型的,而接口中的成员变量只能是public static final类型的抽象类只能继承一个,接口可以实现多个 接口的设计目的,是对类的行为进行约束(更准确的说是一种"有"约束,因为接口不能规定类不可以有什么行为),也就是提供一种机制,可以强制要求不同的类具有相同的行为。它只约束了行为的有无,但不对如何实现...
本人3年开发经验、18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴、今日头条、滴滴等公司offer,岗位是Java后端开发,最终选择去了浪潮。面试了很多家公司,感觉大部分公司考察的点都差不多,所以将自己的心得记下来,希望能给正在找或者准备找工作的朋友提供一点帮助。另外,目前在浪潮也做面试官的工作,身份从求职者变为面试官,看问题的很多角度也不一样,所以下文中既有求职者的视角,也有面试官的视角面试流程??先...
1.集合类:list和Set比较,各自的子类比较(Arraylist,Vector,inkedLIst,HashSet,TreeSet)List:存入元素有序,元素可以重复,允许null值得存在,主要有3个实现类 linkedLIst:底层是双向链表,每一个结点都有指向前一个和后一个结点的指针。由于这种特性,他的特点就是增加和删除快,也因为他存储的元素在内存中不是连续存储,查找效率不及ArrayList ArrayList:底层是动态数组,所以他的查找效率更高,但是由于增加的删...
推荐阅读 关于"高并发系统设计"看这篇就够了,阿里、百度、美团都在用Redis作为目前的主流NoSql数据库,不会是不可能的,在面试中也是非常高频的,一定不能在这个环节丢分,不管是学习,还是面试,以下知识点,都有必要掌握。1.Redis是什么?Redis是一个开放源代码(BSD许可)的内存中数据结构存储,可用作数据库,缓存和消息代理,是一个基于键值对的NoSQl数据库。2.Redis特性?速度快基于键值对的数据结构服务器丰富的功能、丰富的...
---------------------------以下均是平常刷面试题后的总结-----------------------------1,abstract可以修饰什么?为什么不能修饰属性--abstract是抽象的意思,在java中,规定只能修饰类或者方法,所以不能修饰属性。 (1)abstract修饰类,会使这个类成为一个抽象类,这个类将不能生成对象实例,但可以做为对象变量声明的类型(见后面实例),也就是编译时类型。抽象类就相当于一类的半成品,需要子类继承并覆盖其中的抽象方法。...
面试题:Map集合和Collection的区别? Map集合:是一种键和值的映射关系(双列集合) 当作为:夫妻对Collection集合:单列集合,只能存储一种类型的元素,当作为:光棍间接关系:HashSet依赖于Map接口的子实现类HashMap的TreeSet依赖于Map接口的子实现类TreeMap的原文:http://blog.51cto.com/13670525/2114960
HashTable内部数据结构是数组+链表,键值对不允许为null,线程安全,但是锁是整表锁,性能较差/效率低HashMap结构同HashTable,键值对允许为null,线程不安全,默认初始大小为16(固定为2的幂次方),默认扩容阀值为0.75,扩容方式为,先插入再扩容,所以会产生无效扩容,单个链表长度默认为8,当超过时链表自动转为红黑树结构,当树结构长度小于6时,重新转为链表ConcurrentHashMapjdk1.5之后对HashTable的升级版,性能效率各方面...