hashValueSort

構文
hashValueSort( Var hash[] )
引数
hash
値でソートする連想配列(参照引数)
戻値

プログラム

////////////////////////////////////////////////// // 【引数】 // hash : 値でソートする連想配列(参照引数) // 【戻値】 // ////////////////////////////////////////////////// PROCEDURE hashValueSort(Var hash[]) HASHTBL tmp = HASH_SORT DIM cnt = LENGTH(hash) hashInvert(hash) FOR n = 0 TO cnt - 1 tmp[hash[n, HASH_KEY]] = hash[n, HASH_VAL] NEXT hash = HASH_REMOVEALL FOR n = 0 TO cnt - 1 hash[tmp[n, HASH_VAL]] = tmp[n, HASH_KEY] NEXT FEND ////////////////////////////////////////////////// // 【引数】 // hash : キーと値を入れ替える連想配列(参照引数) // 【戻値】 // ////////////////////////////////////////////////// PROCEDURE hashInvert(Var hash[]) HASHTBL tmp DIM cnt = LENGTH(hash) FOR n = 0 TO cnt - 1 tmp[hash[n, HASH_VAL]] = hash[n, HASH_KEY] NEXT hash = HASH_REMOVEALL FOR n = 0 TO cnt - 1 hash[tmp[n, HASH_KEY]] = tmp[n, HASH_VAL] NEXT FEND