题解 | #处理文本#

处理文本

http://www.nowcoder.com/practice/908d030e676a4fac997a127bfe63da64

#! /usr/bin/env bash

########################################################
#
#
########################################################
function solution_1() {
    declare -A map
    while read line; do
        arr=(${line/:/ })
        map["${arr[0]}"]="${map["${arr[0]}"]}${arr[1]}\n"
    done < nowcoder.txt
    k=0
    for i in ${!map[*]}; do
        [ $k -eq 0 ] && k=1 && tmp="[$i]\n${map[$i]}" && continue
        printf "[$i]\n${map[$i]}"
    done
    printf "$tmp"
}

########################################################
#
#
########################################################
function solution_2() {
    declare -A map
    for line in `sort -n -t':' -k1 nowcoder.txt`; do
        arr=(${line/:/ })
        map["${arr[0]}"]="${map["${arr[0]}"]}${arr[1]}\n"
    done
    
    for i in ${!map[*]}; do
            printf "[$i]\n${map[$i]}"
        done
    printf "$tmp"
}




solution_1

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务