• + 0 comments

    Using queue:

    vector<int> rotateLeft(int d, vector<int> arr) {
        //create queue
        queue<int> myQueue;
        for (int num : arr) {
            myQueue.push(num);
        }
        
        //rotate elements in queue
        for (int i = 0; i < d; i ++) {
            int temp = myQueue.front();
            myQueue.pop();
            myQueue.push(temp);
        }
        
        //create result vector with rotated elements.
        vector<int> result;
        for (int j = 0; j < arr.size(); j ++) {
            result.push_back(myQueue.front());
            myQueue.pop();
        }
        
        return result;
    }