Consider an array of numeric strings where each string is a positive number with anywhere from to 10^6 digits. Sort the array’s elements in non-decreasing, or ascending order of their integer values and return the sorted array.
Function Description
Complete the bigSorting function in the editor below.
bigSorting has the following parameter(s):
- string unsorted[n]: an unsorted array of integers as strings
Returns
- string[n]: the array sorted in numerical order
Input Format
The first line contains an integer,n, denoting the number of strings in unsorted.
Each of the n subsequent lines contains an integer string unsorted[i].
Constraints
- 1<=n<=2*10^5
- Each string is guaranteed to represent a positive integer without leading zeros.
- The total number of digits across all strings in unsorted is between 1 and 10^6 (inclusive).
Sample Input 0
6
31415926535897932384626433832795
1
3
10
3
5
Sample Output 0
1
3
3
5
10
31415926535897932384626433832795
#include <math.h> #include <stdio.h> #include <string.h> #include <stdlib.h> #include <assert.h> #include <limits.h> #include <stdbool.h> int cmp(const void *p, const void *q) { char* s1 = *(char**)p; char* s2 = *(char**)q; int s1l=strlen(s1); int s2l=strlen(s2); if(s1l>s2l) return 1; if(s2l>s1l) return -1; int i,flag=0; for(i=0;i<s1l;i++) { if(s1[i]==s2[i]) continue; else { flag=1; break; } } if(flag) { return s1[i]-s2[i]; } return 0; } int main(){ int n,i,tl; scanf("%d\n",&n); char* str[n]; char temp[1000001]; for(i=0;i<n;i++) { scanf("%s",temp); tl=strlen(temp); str[i]=malloc(sizeof(char)*(tl+1)); strcpy(str[i],temp); } qsort((void*)str,n,sizeof(str[0]),cmp); for(i=0;i<n;i++) printf("%s\n",str[i]); return 0; }
Big Sorting HackerRank Solution in C++
#include<iostream> #include<fstream> #include<math.h> #include<algorithm> #include<string> #include<map> #include<vector> #include<queue> #include<stack> #include<sstream> #include<set> using namespace std; #define forn(i,n) for(int i=0;i<(int)(n); i++) #define forsn(i,s,n) for(int i=(s);i<(int)(n); i++) #define esta(x,v) (find((v).begin(),(v).end(),(x)) != (v).end()) #define index(x,v) (find((v).begin(),(v).end(),(x)) - (v).begin()) #define debug(x) cout << #x << " = " << x << endl #define pb push_back #define mp make_pair typedef long long tint; typedef unsigned long long utint; typedef long double ldouble; typedef vector<int> vint; int toNumber (string s) { int Number; if ( ! (istringstream(s) >> Number) ) Number = 0; // el string vacio lo manda al cero return Number; } string toString (int number) { ostringstream ostr; ostr << number; return ostr.str(); } int main (){ int n; cin>>n; vector< pair<int, string> > v; forn(i,n){ string s; cin>>s; v.pb(mp((int)s.size(), s)); } sort(v.begin(), v.end()); forn(i, n){ cout<<v[i].second<<endl; } }
Big Sorting HackerRank Solution in Java
import java.util.Arrays; import java.util.Comparator; import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); String[] unsorted = new String[n]; for (int unsorted_i = 0; unsorted_i < n; unsorted_i++) { unsorted[unsorted_i] = in.next(); } Arrays.sort(unsorted, new Comparator<String>() { @Override public int compare(String o1, String o2) { if (o1.length() < o2.length()) { return -1; } if (o1.length() > o2.length()) { return 1; } return o1.compareTo(o2); } }); for (String s : unsorted) { System.out.println(s); } } }
Big Sorting HackerRank Solution in Python
#!/bin/python import sys a= [] n = int(raw_input().strip()) unsorted = [] unsorted_i = 0 for unsorted_i in xrange(n): unsorted_t = str(raw_input().strip()) unsorted.append(unsorted_t) y=sorted(unsorted,key=int) for i in range(0,len(y)): print y[i]
Big Sorting HackerRank Solution in C#
using System; class Solution { static void Main() { int n = int.Parse(Console.ReadLine()); string[] a = new string[n]; for (int i = 0; i < n; ++i) a[i] = Console.ReadLine(); Array.Sort(a, (s1, s2) => { int l = s1.Length - s2.Length; return (l != 0) ? l : string.Compare(s1, s2, StringComparison.OrdinalIgnoreCase); }); for (int i = 0; i < n; ++i) Console.WriteLine(a[i]); } }
Attempt Big Sorting HackerRank Challenge
Link – https://www.hackerrank.com/challenges/big-sorting/
Next HackerRank Challenge Solution
Link – https://exploringbits.com/super-reduced-string-hackerrank-solution/
Aayush Kumar Gupta is the founder and creator of ExploringBits, a website dedicated to providing useful content for people passionate about Engineering and Technology. Aayush has completed his Bachelor of Technology (Computer Science & Engineering) from 2018-2022. From July 2022, Aayush has been working as a full-time Devops Engineer.
This website features a large selection of medications for online purchase.
You can conveniently order essential medicines without leaving home.
Our catalog includes standard drugs and more specific prescriptions.
Everything is sourced from verified distributors.
https://images.app.goo.gl/ui2FBcg9HHfMB4sc9
We prioritize discreet service, with data protection and prompt delivery.
Whether you’re managing a chronic condition, you’ll find what you need here.
Start your order today and experience trusted support.