zoukankan      html  css  js  c++  java
  • Sort

    Sort

    1. 用man sort 查看sort的帮助文档
    2. sort常用选项有哪些,都有什么功能?提交相关使用的截图
    3. 如果让你编写sort,你怎么实现?写出伪代码和相关的函数或系统调用

    1. 用man sort 查看sort的帮助文档

    输入

    man sort

     

    2. sort常用选项有哪些,都有什么功能?提交相关使用的截图

    sort常用选型

    建立一个test.txt文件,并且输入数据,通过cat命令查看文件内容

    使用sort test.txt命令

    结果如上图,sort默认先根据第一个分割域(首字母)对文件内容进行排列。

     

    -t选项

    -t可以指定分隔域

    sort -tX XXXX

    第一个x为分隔域的标志,xxxx为文件名。

     

    -k选项

    -k选项用于指定域进行排序。

    sort -kX XXXX

    第一个x为第几个域,xxxx为文件名。

    下图将分隔域的标志设置为:,后根据第二个域进行排序

     

    -r选项

    -r选项用于指定域进行逆序排列

     

    -o选项

    -o选项用于将排序的结果写入到另一个文件中。

    sort -o XXXX1 XXXX2

    注意:要写入的文件放在原排序文件的前面,放反会将原排序文件覆盖。font>

    -c选项

    检验是否有序

    一个无序的序列直接排序后检验是不行的,进行完写入文件之后再进行检验顺序才能得到正确结果:

     

    -m选项

    -m选项用于将两个排好序的文件合并成一个排好序的文件,但这两个文件必须是有序的

    先更改一下刚才的两个文件

     

     

    3. 如果让你编写sort,你怎么实现?写出伪代码和相关的函数或系统调用

    #include <stdio.h>
    #define MAXN 100
    sort(int a[],int n);

    int main(){
    int a[MAXN],n,i;
         printf("please input the size of array:");
        scanf("%d",&n);
        for(i=0;i<n;i++){
           scanf("%d",&a[i]);
      }
       sort(a,n);
       for(i=0;i<n;i++){
            printf("%d ",a[i]);
        }
        return 0;

    }
    sort(int a[],int n){
          int i,j;
         for(i=0;i<n-1;i++){
             for(j=0;j<n-i-1;j++){
                 if(a[j]>a[i+1])
                {
                     int tmp = a[j];
                     a[j]=a[j+1];
     
                     a[j+1]=tmp;
                  }
              }
        }
    }

    个人编程能力有限,只能实现简单的排序方法,但是根据网上查找的资料,我认为这个程序如果基于C语言的话需通过读取字符判断当前是否为分隔符,读取文件,对数组调用qsort函数进行排序。

     

    可参考博文:linux内核中的排序接口--sort函数-阿里云开发者社区 (aliyun.com)

  • 相关阅读:
    jQuery的父,子,兄弟节点查找方法
    我们的产品最终入驻淘宝服务市场
    iframe显示滚动栏
    自己定义控件三部曲之动画篇(十三)——实现ListView Item进入动画
    [叁]Pomelo游戏server编程分享 之 server结构与配置分析
    数列求和
    字节与字符_字节流与字符流_ASCII与Unicode_GB2312_GBK_GB18030_BIG-5
    Codeforces Round #257(Div. 2) B. Jzzhu and Sequences(矩阵高速幂)
    呼叫保持流程
    PDF转EPUB格式电子书经验总结
  • 原文地址:https://www.cnblogs.com/Aegon-Targaryen/p/15345786.html
Copyright © 2011-2022 走看看