| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1192 人关注过本帖
标题:#小弟刚刚接触C++,还请个位大虾请教。。。
取消只看楼主 加入收藏
wangxinkai
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-3-16
收藏
 问题点数:0 回复次数:4 
#小弟刚刚接触C++,还请个位大虾请教。。。
如果拿链表实现:
插入排序,
冒泡排序,
选择排序,
交换排序,
这几种排序方法,该怎么实现呢,小弟初来乍到,不懂的很多,还请个位大虾们,讲解下。
搜索更多相关主题的帖子: 大虾 
2008-03-16 18:32
wangxinkai
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-3-16
收藏
得分:0 
谢谢。。。可我要的是,内几种排序方法,链表的。。。。
2008-03-16 20:34
wangxinkai
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-3-16
收藏
得分:0 
数上都是数组。。。。。

我合计拿链表写成类。。。。

以后要用的时候也方便么。。。。。
2008-03-16 21:42
wangxinkai
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-3-16
收藏
得分:0 
能写出来就不问了。
2008-03-16 21:53
wangxinkai
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-3-16
收藏
得分:0 
冒泡;
void BubbleSort(int* pData,int Count)
{
  int iTemp;
  for(int i=1;i<Count;i++)
  {
    for(int j=Count-1;j>=i;j--)
    {
      if(pData[j]<pData[j-1])
      {
        iTemp = pData[j-1];
        pData[j-1] = pData[j];
        pData[j] = iTemp;
      }
    }
  }
}

void main()
{
  int data[] = {10,9,8,7,6,5,4};
  BubbleSort(data,7);
  for (int i=0;i<7;i++)
    cout<<data[i]<<" ";
  cout<<"\n";
}
交换;
void ExchangeSort(int* pData,int Count)  
{
  int iTemp;
  for(int i=0;i<Count-1;i++)
  {
    for(int j=i+1;j<Count;j++)
    {
      if(pData[j]<pData[i])
      {
        iTemp = pData[i];
        pData[i] = pData[j];
        pData[j] = iTemp;
      }
    }
  }
}

void main()
{
  int data[] = {10,9,8,7,6,5,4};
  ExchangeSort(data,7);
  for (int i=0;i<7;i++)
    cout<<data[i]<<" ";
  cout<<"\n";
}
选择;
void SelectSort(int* pData,int Count)
{
  int iTemp;
  int iPos;
  for(int i=0;i<Count-1;i++)
  {
    iTemp = pData[i];
    iPos = i;
    for(int j=i+1;j<Count;j++)
    {
      if(pData[j]<iTemp)
      {
        iTemp = pData[j];
        iPos = j;
      }
    }
    pData[iPos] = pData[i];
    pData[i] = iTemp;
  }
}

void main()
{
  int data[] = {10,9,8,7,6,5,4};
  SelectSort(data,7);
  for (int i=0;i<7;i++)
    cout<<data[i]<<" ";
  cout<<"\n";
}

插入;
void InsertSort(int* pData,int Count)
{
  int iTemp;
  int iPos;
  for(int i=1;i<Count;i++)
  {
    iTemp = pData[i];
    iPos = i-1;
    while((iPos>=0) && (iTemp<pData[iPos]))
    {
      pData[iPos+1] = pData[iPos];
      iPos--;
    }
    pData[iPos+1] = iTemp;
  }
}

void main()
{
  int data[] = {10,9,8,7,6,5,4};
  InsertSort(data,7);
  for (int i=0;i<7;i++)
    cout<<data[i]<<" ";
  cout<<"\n";
}


拿数组能写,拿链表就蒙了。。。。。
2008-03-16 21:55
快速回复:#小弟刚刚接触C++,还请个位大虾请教。。。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018177 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved