![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法系列——面试经典编程题
冷静BB
Java开发
展开
-
查找字符串中是否包含相同字符
/** * 题目: * 请实现一个算法,确定一个字符串的所有字符是否全都不同。 * 这里我们要求不允许使用额外的存储结构。 * 给定一个string,iniString,请返回一个bool值: * True代表所有字符全都不同,False代表存在相同的字符。 * 保证字符串中的字符为ASCII字符。字符串的长度小于等于3000。 * 测试样例: * "aeiou" 返回:True原创 2017-01-20 16:21:08 · 2492 阅读 · 0 评论 -
Java基础——逻辑运算符与或非
与或非运算符,都是先计算符号左边的值,再计算右边的值;例如:5>2 && 3+9<10先计算5>2,结果为true;再计算3+9<10,为false;最后计算true&&false,结果为false。 1.与运算(长路&、短路&&),当符号两边的值都为true时,结果才为true,否则为false1.1...原创 2017-09-29 23:17:15 · 7764 阅读 · 0 评论 -
Java基础——switch case用法
jdk1.7之前,switch里面只能接受int和char类型的数据;其中,多个case对应同一代码块,不能这样写——case 1,2,3:——只能是case 1: case 2: case 3:——一个case后面只能接一个整数。 package test;import java.util.Scanner;public class SwitchTest { public...原创 2017-09-29 23:03:35 · 2549 阅读 · 0 评论 -
Java基础——for循环及其优化
for循环1.首先知道,for循环的3个表达式的意思:表达式1: 一般为赋值表达式,给控制变量赋初值;表达式2: 关系表达式或逻辑表达式,循环控制条件;表达式3: 一般为赋值表达式,给控制变量增量或减量。3个表达式都可以为空,第2个表达式为空,表示条件一直为true,for无限循环。for(;;){ System.out.println("hello");}/...原创 2017-09-29 22:30:47 · 994 阅读 · 0 评论 -
Java基础——try finally执行顺序
首先要确定的一点是,不管有没有出现异常,finally块中代码都会执行1.try有return语句,finally没有return语句,返回的是在执行finally语句之前,try里面就确定好的值有如下代码package test;public class TryFinallyTest { public static void main(String[] args) { ...原创 2017-09-29 00:03:53 · 687 阅读 · 0 评论 -
HashMap中按key排序
今天面试,碰到一问题,觉得挺有意思的,记录下来。以下代码,print方法输出的是key的集合:[1, 20, 3, 9],现在print2方法要实现以下功能,将map中的key-value按以下方式打印出来:1----v13----v39----v920----v20其中,map中的key是String类型的,但都是自然数,也即key为:"1" "2" "8" "10原创 2017-09-28 23:11:10 · 8501 阅读 · 0 评论 -
压缩字符串
/** * 利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能。 * 比如,字符串“aabcccccaaa”经压缩会变成“a2b1c5a3”。 * 若压缩后的字符串没有变短,则返回原先的字符串。 给定一个string * iniString为待压缩的串(长度小于等于10000),保证串内字符均由大小写英文字母组成, * 返回一个string,为所求的压缩后或未变化的串。 *原创 2017-01-22 11:55:37 · 755 阅读 · 0 评论 -
判断字符串重排后是否相同(区分大小写)
/** * 题目: * 给定两个字符串,请编写程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。 * 这里规定大小写为不同字符,且考虑字符串重点空格。 * 给定一个string stringA和一个string stringB, * 请返回一个boolean,代表两串是否重新排列后可相同。保证两串的长度都小于等于5000。 * 测试样例: * "This is no原创 2017-01-20 17:45:25 · 2080 阅读 · 0 评论 -
字符串反转
/** * 题目: 请实现一个算法,在不使用额外数据结构和储存空间的情况下, * 翻转一个给定的字符串(可以使用单个过程变量)。 给定一个string iniString, * 请返回一个string,为翻转后的字符串。保证字符串的长度小于等于5000。 * 测试样例: "This is nowcoder" * 返回:"redocwon si sihT" * */public cla原创 2017-01-20 16:54:59 · 411 阅读 · 0 评论 -
Java基础——char int之间的转换
一个例子说明:char型的字符,如小写字母转成int型的数字的 package test;import java.util.Scanner;public class UnicoeTes { public static void main(String[] args) { printUnicode4Upper(); printUnicode4Lowwer(); p...原创 2017-09-30 08:30:41 · 2073 阅读 · 0 评论