I found an algorithm which sorts the digits of a number to its smallest form. IE 54321 ==> 12345.The algorithm looks like:int main(){    int x = 0;    cin >> x;    for ( int l = 0; l < 10; ++l )    {        int rem = x % 10;        int tx = x / 10;        while ( rem || tx )        {            if ( rem == l ) cout << rem;            rem = tx % 10;            tx = tx / 10;        }    }    cout << endl;}Could somebody explain to me what the big oh notation of this function would be? I'm not sure if it makes a difference on the size of the number (I am using numbers 9/10 digits long).I have to develop two algorithms to check if one number contains all the digits of another number. One method I used brute force so I just had a double for loop checking to see if digits from number one existed from number two (numbers are represented as strings). The second algorithm has to be more efficient so I am trying to sort the numbers using the algorithm above and just compare using a single for loop after. I thought this would take less time but it is taking far more time than the double for loop brute method and i'm not sure why. 
Big-Oh of algorithm
algorithm analysis;runtime analysis;loops