美文网首页
力扣解题-194转置文件

力扣解题-194转置文件

作者: 小明阿婆 | 来源:发表于2024-11-04 10:19 被阅读0次

题目

给定一个文件 file.txt,转置它的内容。
你可以假设每行列数相同,并且每个字段由 ' ' 分隔。

示例:
假设 file.txt 文件内容如下:
name age
alice 21
ryan 30

应当输出:
name alice ryan
age 21 30

解题

思路:

  • 利用awk记录二维表,在END部分做转置
  • %s,表示一个字符串

代码:

# Read from the file file.txt and print its transposed content to stdout.
awk '{
    for (i = 1; i <= NF; i++) {
        a[i,NR] = $i
    }
}
END {
    for (i = 1; i <= NF; i++) {
        for (j = 1; j <= NR; j++) {
            printf "%s", a[i,j]
            if (j < NR) {
                printf " "
            }
        }
        if (i < NF) {
            print ""
        }
    }
}' \
file.txt

相关文章

网友评论

      本文标题:力扣解题-194转置文件

      本文链接:https://www.haomeiwen.com/subject/hdeodjtx.html