Switch indexes, create the next highest number using the same exact 9 digits presented

So I received a challenge that states the following:
“Design a program that takes as input a 9 digit number where no digit appears twice and produces as output an arrangement of the same 9 digits corresponding to the next highest number. If no such number exists, the algorithm should indicate this. So for example, if the input is 781623954 the output would be 781624359.”