到目前为止,这是我的计划:
#include <iostream>
#include <string>
using namespace std;
template <class type>
void display( type list[], int size );
template <class type>
void bubblesort( type list[], int size);
在我的主要功能中,我有列表。
int main()
{
const int SIZE = 5;
string nameList[SIZE] = {"Bob", "Allen", "Beth", "Zebra",
"Hamburger" };
int numberList[SIZE] = {88, 23, 74, 45, 78};
//display list 1
display(nameList, SIZE);
//display list 2
display(numberList, SIZE);
system("pause");
return 0;
}
这是我显示列表的方式:
template <class type> //template must be included above
void display( type list[], int size )
{
for( int x = 0; x < size; x++ )
{
cout << list[x] << endl;
}
}
这是我想要包括bubblesort的地方,但我不知道如何。
template <class type>
void bubblesort( type list[], int size)
{
}
答案 0 :(得分:0)
实现整数的冒泡排序是直截了当的。一个简单的泡泡排序谷歌将回答你的问题。字符串略有不同。你必须抓住字符串的第一个字符
{
string myString = "cat";
char c = myString[0];
//stringName[0] obtains the first character, since string are basically character array objects, so they can be accessed like a normal array
}
You can then cast that character to an integer
{
char firstChar = myString[0];
int firstCharValue = (int)firstChar
//or just as
int firstCharValue = (int)myString[0]
}
然后你回到一个简单的整数冒泡排序。
答案 1 :(得分:0)
试试这段代码。
void bubblesort(type list [],int size)
{ for(int i = 0; i
{
int flag=0;
for(int j=0;n<size-i-1;j++)
{
if(list[j]>list[j+1])
{
int temp=list[j];
list[j]=list[j+1];
list[j+1]=temp;
flag=1;
}
}
if(flag==1) break;
}
}