501. 二叉搜索树中的众数
题目链接
const getList = (root: TreeNode | null, resList: number[]) => {
if (!root) return;
if (root.left) getList(root.left, resList);
resList.push(root.val);
if (root.right) getList(root.right, resList);
return;
}
function findMode(root: TreeNode | null) {
const valList = [] as number[];
getList(root, valList);
let map = {} as {[key:number]:number};
valList.forEach(it=>{
if (!map[it])map[it]=0;
map[it]+=1;
});
const maxNum = Math.max(...Object.values(map));
const res = [] as number[];
Object.keys(map).forEach(key=>{
if(map[Number(key)] === maxNum) res.push(Number(key));
})
return res;
};