今天面试,让写一个冒泡排序和一个选择排序,居然没弄明白这两种算法的区别,特此发表一篇文章,以备前车之鉴!希望和我有过同样经验的,吸取经验教训。以下是对上面所说两种算法的阐述!
// 选择排序(选择排序是对两个相邻数进行比较)
public class ChoicesSort
{
public static void main(String[] args)
{
int[] a = {6,5,2,9,1};
sortASC(a);
for(int i = 0;i < a.length;i++)
{
System.out.println("a"+i+"="+a[i]);
}
}
public static void sortASC(int[] a)
{
int temp;
// 进行升序排序
for(int i=0;i<a.length;i++)
{
for(int j=i+1;j<a.length;j++)
{
if(a[i] > a[j])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}
}
// 冒泡排序算法(每次内部的循环都和外部循环的数进行比较)
public class BubbleSort
{
public static void main(String[] arg)
{
int[] a = {6,5,4,9,1};
sortASC(a);
for(int i=0;i<a.length;i++)
{
System.out.println("a"+i+"="+a[i]);
}
}
// 选择排序算法——进行升序排列
public static void sortASC(int[] a)
{
int temp;
for(int i=0;i<a.length;i++)
{
for(int j=0;j<a.length-i-1;j++)
if(a[j]>a[j+1])
{
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
}
分享到:
相关推荐
在程序员面试中,数据库相关知识是必不可少的一部分,这涵盖了数据库设计的基本理论、事务处理以及SQL语言的运用。以下是对这些知识点的详细解释: 1. **范式**:范式是数据库设计中的规范,用于减少数据冗余和更新...
【Java程序员必备——比较全的Java面试题】 Java编程语言作为全球最受欢迎的开发语言之一,其面试题库广泛且深入,涵盖了基础语法、面向对象、集合框架、多线程、网络编程、I/O流、数据库操作、设计模式等多个方面...
**《程序员面试白皮书》** 是一本专门针对程序员面试准备的书籍,旨在帮助读者通过一系列有趣的谜题训练来提升逻辑思维能力和解决问题的能力。该书不仅仅局限于编程技能的传授,更注重于通过智力挑战的形式增强应聘...
经典的程序员面试书籍。书中介绍了很多面试会遇到的经典的问题,介绍知识全面细致,对于广大即将要找程序员工作的人来说起到温故知新的作用
程序员——必看的文档 程序员——必看的文档 程序员——必看的文档 程序员——必看的文档
黑马程序员——Android移动开发源码
无水印广告
《程序员突击——Tomcat原理与Java Web系统开发》源码 作者根据多年的Java Web开发经验,精心编写了本书。按照读者的学习规律,本书在介绍Java技术的基础上,循序渐进地介绍了如何在最新的Tomcat上开发整合各种Java ...
绝对详细的Linux指南,从Linux基础知识开始,直到高级编程,不仅适合Linux程序员,也适用学习Linux的朋友
书 名:程序员突击——VISUAL C#2008原理与系统开发 作 者:欧阳炜昊 主编 出 版 社:清华大学出版社 出版时间:2009-8-1 ISBN:9787302183549 纸书页数:352页 定 价:¥ 36.00 内容简介: 本书集...
【程序员面试注意事项】 在程序员的面试过程中,保持良好的非语言沟通至关重要。面试时要与面试官保持目光接触,展示你的自信、真诚和决心。避免眼神飘忽不定,因为这可能会传达出紧张、冷漠或不安全的感觉。如果...
《程序员面试宝典——经典》是一本专门为准备进入IT行业或者寻求职业晋升的程序员量身打造的面试指南。这本书深入浅出地解析了面试中常见的技术问题和面试技巧,旨在帮助读者更好地理解和应对面试挑战。以下是一些...
**********程序员面试前必读!********好书推荐! **********程序员面试前必读!********好书推荐! **********程序员面试前必读!********好书推荐! **********程序员面试前必读!********好书推荐!
好资源
《C_C++程序员面试宝典》是一本专为C_C++程序员设计的面试指南,旨在帮助求职者在激烈的就业市场中脱颖而出。本书不仅涵盖了求职准备和技巧,还深入探讨了英文面试策略,以及如何应对电话面试,是每一位C_C++程序员...
java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流...
C_C++程序员面试宝典——第17章_思维拓展,大家共分享
在iOS相关技术岗位的面试中,多线程技术更是必考项。作为开发者,我们除了能够熟练使用常用的多线程编程技术外,对于复杂场景的多线程及决方案也要有所了解,例如互相依赖的任务的线程分配,多队列组的应用、死锁...