diff --git a/21 May K closest elements b/21 May K closest elements new file mode 100644 index 00000000..e1f65b1f --- /dev/null +++ b/21 May K closest elements @@ -0,0 +1,27 @@ +class Solution { + public: + vector printKClosest(vector arr, int n, int k, int x) { + map> mp; + for(auto it:arr){ + mp[abs(it-x)].push_back(it); + } + vector ans; + for(auto it:mp){ + if(it.first==0){ + continue; + } + if(k==0){ + break; + } + sort(it.second.rbegin(),it.second.rend()); + for(auto num:it.second){ + ans.push_back(num); + k--; + if(k==0){ + break; + } + } + } + return ans; + } +};