こんにちは。いつもお世話になっています。
配列を、特定の要素の出現回数でソートしたいのですが、アルゴリズムがわかりません。
ネットで調べましたが、名前のabc順や数値の昇順、降順等は在りますが、出現回数順は見つけられませんでした。
以下のサンプルを例とすると、Taro, Hanako, Kaoriの順にソートする方法を知りたいです。
また、同じ出現回数の場合は、ageの昇順でソートしたいです。
よろしくお願いいたします。
GAS
1function MyFunc(){ 2 var people = []; 3 4 people.push(new Person('Taro', 0)); 5 people.push(new Person('Hanako', 1)); 6 people.push(new Person('Taro', 2)); 7 people.push(new Person('Taro', 3)); 8 people.push(new Person('Hanako', 4)); 9 people.push(new Person('Kaori', 5)); 10 11 var sortedPeople = Sort(people); 12} 13 14// ★名前の出現頻度準でソートした配列を返したい 15// 期待値:[{Taro, 0}, {Taro, 2}, {Taro, 3}, {Hanako, 1}, {Hanako, 4}, {Kaori, 5}] 16function Sort(people){ 17 var resultPeople; 18 19 return resultPeople; 20} 21 22 23function Person(name, age) { 24 this.name = name; 25 this.age = age; 26}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/05/24 09:44
2021/05/24 10:30
2021/05/24 10:51
2021/05/24 14:29
2021/05/25 00:37