回 帖 发 新 帖 刷新版面

主题:单词排序的算法

请问单词排序有那些算法(就是把单词按字母顺序排列)。谢谢

回复列表 (共3个回复)

沙发

潭浩强的c程序设计书上有

板凳

#include <iostream>

using namespace std;

static int Compare(const void *p1, const void *p2);

int main()
{
      const char* words[] = {
              "wgmmdp",
              "ccc",
              "winner",
              "zzz",
              "knptw",
              "jmptw",
              "losty",
              "knrux",
              "lnsty",
              NULL //保证有指针数组结尾标记
        };
      int len = 0;
      int i = 0;
      while (words[i])//求words的长度
      {
            len++;
            i++;
      }
      cout << "排序前:" << endl;
      for (i=0; i<len; i++)
            cout << words[i] << endl;
            
      qsort(words, len, sizeof(words[0]), Compare);//将words[]按递增排序

      cout << "排序后:" << endl;
      for (i=0; i<len; i++)
            cout << words[i] << endl;
    getchar();
    return 0;
}

static int Compare(const void *p1, const void *p2)
{
    return (strcmp(*(char**)p1, *(char**)p2));
}

3 楼

使用数组指针指向二维数组(char)型

我来回复

您尚未登录,请登录后再回复。点此登录或注册