
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Find Maximum Value by Rotating Digits of a Given Number in JavaScript
We will be writing a program to find the maximum value possible by rotating the digits of a given number. We will be using a loop to break down the number into individual digits and rearrange them in a way that gives us the maximum value. The loop will continuously rotate the digits and keep track of the highest value obtained until all possible rotations have been evaluated. The maximum value obtained from this process will then be returned as the result.
Approach
To find the maximum possible value by rotating digits of a given number, follow these steps ?
Convert the number to a string to access its individual digits.
Create an array of all possible rotations of the number.
Sort the array in non-ascending order.
Convert the largest element in the array back to a number.
Return the largest number.
To handle negative numbers, the sign of the largest number should be determined before converting it back to a number.
Example
Here is an example of a JavaScript program to find the maximum value possible by rotating the digits of a given number ?
function maxRotate(num) { num = num.toString(); let max = num; for (let i = 0; i < num.length - 1; i++) { num = num.slice(0, i) + num.slice(i + 1) + num[i]; if (num > max) { max = num; } } return max; } console.log(maxRotate(38596));
Explanation
The function maxRotate takes in a number num as an argument and converts it to a string.
A variable max is declared and is assigned the value of num. This variable will store the maximum value possible by rotating the digits of num.
A for loop is used to iterate through the digits of num. For each iteration, the num string is reassembled by removing the digit at index i, concatenating the remaining digits, and then adding the removed digit back to the end of the string.
After each iteration, the value of num is compared with the value of max. If num is greater than max, the value of num is assigned to max.
Finally, the function returns the value of max after all iterations are completed. In this example, when the function is called with the argument 38596, the returned value is 956638, which is the maximum value possible by rotating the digits of 38596.