芒果iOS开发之常见算法总结
2015-10-30 15:42
513 查看
常见算法题
1、冒泡排序
冒泡排序思想:两两比较待排序记录的关键字,发现两个记录的次序相反
时即进行交换,直到没有反序的记录为止。(从第一个数开始比较)
int a[12] = {30, 21, 13, 37, 43, 23, 34, 53, 66, 72, 99, 95};int index2 = 0;
for (int index1 = 0; index1 < 12; index1++) {
// 取出第(n+1)个数与前者进行比较
// 比较完第一轮,将最大的数置顶,就好比是气泡一样for (index2 = index1+1 ; index2 <
12; index2++) {
int variable = 0;
if (a[index1] < a[index2]) {
variable = a[index1];a[index1] = a[index2];a[index2] = variable;
}}
}
2、插入排序
插入排序实现思想:在已排好的序列中用顺序法查找插入位置,找到后将
该位置原来的记录及其后面所有记录顺序后移一个位置,空出该位置来插入新记
录。
int i, j;
for (i = 1; i < 12; i++) {
if (a[i] < a[i - 1]) //
如果前一个数大于后一个数{
int temp = a[i]; //
保存值
for (j = i - 1; j >= 0 && a[j] > temp; j--) {
a[j + 1] = a[j];}
a[j + 1] = temp;}
}
更多算法持续更新中。。。
1、冒泡排序
冒泡排序思想:两两比较待排序记录的关键字,发现两个记录的次序相反
时即进行交换,直到没有反序的记录为止。(从第一个数开始比较)
int a[12] = {30, 21, 13, 37, 43, 23, 34, 53, 66, 72, 99, 95};int index2 = 0;
for (int index1 = 0; index1 < 12; index1++) {
// 取出第(n+1)个数与前者进行比较
// 比较完第一轮,将最大的数置顶,就好比是气泡一样for (index2 = index1+1 ; index2 <
12; index2++) {
int variable = 0;
if (a[index1] < a[index2]) {
variable = a[index1];a[index1] = a[index2];a[index2] = variable;
}}
}
2、插入排序
插入排序实现思想:在已排好的序列中用顺序法查找插入位置,找到后将
该位置原来的记录及其后面所有记录顺序后移一个位置,空出该位置来插入新记
录。
int i, j;
for (i = 1; i < 12; i++) {
if (a[i] < a[i - 1]) //
如果前一个数大于后一个数{
int temp = a[i]; //
保存值
for (j = i - 1; j >= 0 && a[j] > temp; j--) {
a[j + 1] = a[j];}
a[j + 1] = temp;}
}
更多算法持续更新中。。。
相关文章推荐
- 冒泡排序
- C#冒泡法排序算法实例分析
- Java数据结构及算法实例:冒泡排序 Bubble Sort
- c++冒泡排序示例分享
- Java中的数组排序方式(快速排序、冒泡排序、选择排序)
- python冒泡排序算法的实现代码
- c语言实现冒泡排序、希尔排序等多种算法示例
- c#冒泡排序示例分享
- 浅谈php冒泡排序
- Javascript冒泡排序算法详解
- C++冒泡排序算法实例
- C语言的冒泡排序和快速排序算法使用实例
- C语言实现冒泡排序算法
- c语言冒泡排序法代码
- 排序算法之PHP版快速排序、冒泡排序
- php排序算法(冒泡排序,快速排序)
- PHP 冒泡排序算法的实现代码
- 冒泡排序算法原理及JAVA实现代码
- Java实现八个常用的排序算法:插入排序、冒泡排序、选择排序、希尔排序等
- java实现冒泡排序算法