面试题_抽象工厂,字符反串,冒泡与选择排序
Posted 一起学习_Program
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面试题_抽象工厂,字符反串,冒泡与选择排序相关的知识,希望对你有一定的参考价值。
面试题_抽象工厂,字符反串,冒泡与选择排序1:写一个抽象工厂模式 java实例 ?
2,:String str="ABCDF" 把这个字符串怎么排序成“FDCBA”?
3:写一个冒泡排序把这个数组排一下“1,9,3,4,7,2,8,5,”?
1)
public interface Work{
void doWork();
}
CreateProduct:
public class Studentwork implements Work{
public void doWork() {
System.out.println("学生做作业!");
}
}
public class TeacherWork implements Work {
public void doWork() {
System.out.println("老师审批作业!");
}
}
生产者
public interface IWorkFactory {
Work getWork();
}
Create factory
public class StudentWorkFactory implements IWorkFactory {
public Work getWork() {
return new StudentWork();
}
}
public class TeacherWorkFactory implements IWorkFactory {
public Work getWork() {
return new TeacherWork();
}
}
Test
public class Test {
public static void main(String[] args) {
IWorkFactory studentWorkFactory = new StudentWorkFactory();
studentWorkFactory.getWork().doWork();
IWorkFactory teacherWorkFactory = new TeacherWorkFactory();
teacherWorkFactory.getWork().doWork();
}
}
2)字符串反转如下:
public String getReverseStr(String str)
{
String reverseStr = "";
if (null != str && !str.equals(""))
{
for (int i = 1 ; i < =str.length(); i++){
reverseStr += str.charAt(str.length() - i);
// 依次按与原字符串相反的顺序拼装字符串,内部会自动进行类型转换
//str.length() - i刚好是str的下标,因为i是从1开始
}
}
return reverseStr;
}
3)冒泡排序,从小到大
public int[] sortArr(int[] targetArr){
//小到大的排序
int temp = 0;
for(int i = 0;i<targetArr.length;i++){
for(int j = i;j<targetArr.length;j++){
if(targetArr[i]>targetArr[j]){
temp = targetArr[i];
targetArr[i] = targetArr[j];
targetArr[j] = temp;
}
}
}
return targetArr;
}
3)选择排序,从小到大
private static int[] selection_sort(int[] unsorted)
{
for (int i = 0; i < unsorted.length; i++)
{
int min = unsorted[i], min_index = i;
for (int j = i; j < unsorted.length; j++)
{
if (unsorted[j] < min)
{
min = unsorted[j];
min_index = j;
}
}
if (min_index != i)
{
int temp = unsorted[i];
unsorted[i] = unsorted[min_index];
unsorted[min_index] = temp;
}
}
return unsorted;
}
以上是关于面试题_抽象工厂,字符反串,冒泡与选择排序的主要内容,如果未能解决你的问题,请参考以下文章
Java八股文面试题 基础篇 -- 二分查找算法冒泡排序选择排序插入排序希尔排序快速排序