摘要: [toc] 题目一:完美的代价 问题描述: 回文串,是一种特殊的字符串,它从左往右读和从右往左读是一样的。小龙龙认为回文串才是完美的。现在给你一个串,它不一定是回文的,请你计算最少的交换次数使得该串变成一个完美的回文串。(时间限制:1.0s,内存限制:512.0MB) 交换的定义是:交换两个相邻的字 阅读全文
posted @ 2020-03-18 17:24 samsaraaa 阅读(143) 评论(0) 推荐(0) 编辑
摘要: [toc] StringBuffer的特点? StringBuffer,顾名思义,就是字符串缓冲区,它本质上就是一个用于存储数据的容器。我们知道数组也是一个用于存储数据的容器,那么StringBuffer与数组相比有什么特点呢? StringBuffer的长度是可变的。 StringBuffer可以 阅读全文
posted @ 2020-03-18 12:39 samsaraaa 阅读(151) 评论(0) 推荐(0) 编辑
摘要: [toc] String的特点? 通过查看String类的源码我们得知:String类被final关键字修饰,这即是说明String类的特点就是:字符串对象一旦被初始化就不会被改变。注意:此处是字符串对象而不是字符串引用。也即是说: 我们需要注意所有对String的操作(包括增删改等)都是新建对象( 阅读全文
posted @ 2020-03-17 19:46 samsaraaa 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 正文 异常是什么?Java如何描述异常? 异常,顾名思义就是指程序执行过程中出现的不正常情况。例如: class ExceptionDemo { public static void main(String[] args) { int[] arr = new int[3]; System.out.p 阅读全文
posted @ 2020-03-17 12:23 samsaraaa 阅读(124) 评论(0) 推荐(0) 编辑
摘要: [toc] 前言 本篇文章是多线程系列的第三篇( 第二篇可参考 "多线程(二)" ),主要讲解:死锁、等待 唤醒机制、Lock和Condition。文章讲解的思路是:先通过一个例子来演示死锁的现象,再通过分析引出一系列的解决方案。同样,重点部分我都会用红色字体标识。 正文 死锁现象? 前一篇文章讲过 阅读全文
posted @ 2020-03-16 15:41 samsaraaa 阅读(136) 评论(0) 推荐(0) 编辑
摘要: [toc] 题目一:矩阵乘法 问题描述: 给定一个N阶矩阵A,输出A的M次幂(M是非负整数)(时间限制:1.0s,内存限制:512.0MB,) 例如: A = 1 2 3 4 A的2次幂 7 10 15 22 输入、输出格式: 第一行是一个正整数N、M(1 arr = new ArrayList() 阅读全文
posted @ 2020-03-15 21:05 samsaraaa 阅读(146) 评论(0) 推荐(0) 编辑
摘要: [toc] 前言 本篇文章是多线程系列的第二篇( 第一篇可参考 "多线程(一)" ),主要讲解:线程安全问题、同步、锁。文章讲解的思路是:先通过一个例子引出一系列问题,然后再通过多种方式尝试解决,最终引出解决方案。大家可以根据我的目录进行选择性地查看。文章的重点部分我都会用红色字体展示。 正文 如何 阅读全文
posted @ 2020-03-15 15:15 samsaraaa 阅读(138) 评论(0) 推荐(0) 编辑
摘要: [toc] 内部类是什么?它有什么特点?有什么使用场景? 内部类,顾名思义就是定义在另一个类里面的类。就像下面这样: 通过编译上面的java文件我们发现最后总共产生了两个字节码文件:Outer.class和Outer$Inner.class。第一个很好理解,我们需要注意最后一个,因为完全有下面这种可 阅读全文
posted @ 2020-03-15 12:07 samsaraaa 阅读(176) 评论(0) 推荐(0) 编辑
摘要: [toc] 题目一:分解质因数 问题描述: 求出区间[a,b]中所有整数的质因数分解。(时间限制:1.0s,内存限制:512.0MB,2 1) return false; else return true; } } key import java.util.Scanner; public class 阅读全文
posted @ 2020-03-14 21:56 samsaraaa 阅读(88) 评论(0) 推荐(0) 编辑
摘要: [toc] 前言 本篇文章是多线程系列的第一篇,主要讲解一些基础知识:包括线程是什么、为什么要使用多线程、怎样使用。 正文 正文之前 首先我们要知道,并不是所有的语言都支持多线程技术。比如:在C++ 11以前,它是没有内置的多线程机制的,因此它必须调用操作系统的多线程功能来进行多线程程序设计( 详情 阅读全文
posted @ 2020-03-14 15:27 samsaraaa 阅读(101) 评论(0) 推荐(0) 编辑