为了账号安全,请及时绑定邮箱和手机立即绑定

c++编程用函数模板实现排序算法(冒泡排序、插入排序) ?

c++编程用函数模板实现排序算法(冒泡排序、插入排序) ?

C++
函数式编程 2019-02-08 19:07:53
c++编程用函数模板实现排序算法(冒泡排序、插入排序) 
查看完整描述

2 回答

?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

#include <iostream>

using namespace std;


//从小到大排序

template <typename T>

void Bubble(T arr[], int n)

{

int i,j;

for (i=0; i<n; i++)

for (j=0; j<n-i-1; j++)

{

if (arr[j] > arr[j+1])

{

T temp;

temp = arr[j];

arr[j] = arr[j+1];

arr[j+1] = temp;

}

}


for (i=0; i<n; i++)

cout << arr[i] << endl;

}


//从小到大排序

template <typename T>

void Insert(T arr[], int n)

{

int i,j,pos;

T temp;

for (i=0; i<n; i++)

{

pos = i;

for (j=i; j<n; j++)

{

if (arr[j] < arr[pos])

{

pos = j;

temp = arr[j];

arr[j] = arr[pos];

arr[pos] = temp;

}

}


temp = arr[i];

arr[i] = arr[pos];

arr[pos] = temp;

}


for (i=0; i<n; i++)

cout << arr[i] << endl;

}


int main()

{

int i[7] = {2, 234, 234, 12, 1400, 345, 564};

float f[7] = {2.9, 234.2, 234.5, 12.73, 1400, 345.2, 564.1};

//Bubble(i, 7);

Insert(i, 7);

cout << endl;

//Bubble(f, 7);

Insert(f, 7);


return 0;

}



查看完整回答
反对 回复 2019-03-03
  • 2 回答
  • 0 关注
  • 790 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信