Problème de double pointeur et problème de fenêtre coulissante

Je ne l'ai pas écrit depuis plusieurs jours, mais je travaille dessus depuis un certain temps, et je ne l'ai pas réussi depuis un jour. J'ai écrit beaucoup de problèmes de double pointeur ces jours-ci, et le problème de programmation dynamique devient lentement plus compétent. Trouvez l'état de la "seconde" précédente et trouvez l'équation de transition d'état. En ce qui concerne le problème du double pointeur, j'ai vraiment compris comment résoudre le problème en 2 minutes, mais quand une question était posée, la réponse était toujours fausse, et je ne savais pas pourquoi. Plus tard, j'ai découvert que je comprenais à peu près les changements dans le pointeur. Cependant, il n'est pas tombé sur le code, et il y avait un problème de pointage de pointeur flou dans l'implémentation du code. Ci-dessous, nous listons les questions: (Cette question n'est pas l'original)

Cette question a été posée pendant le jeu et mes yeux n'étaient pas faciles à utiliser. J'ai commencé à écrire pour maintenir l'ordre relatif des éléments 0. Hahahaha, le temps de vérification a été faux, j'ai été aveuglé par moi-même et j'ai découvert plus tard que ma question était fausse. Maintenant, le problème du double pointeur, vous devez penser clairement à comment déplacer le pointeur 1 et le pointeur 2 dans un cas, et comment déplacer le pointeur 2 et le pointeur 1 dans le second cas! C'est important!

Ci-dessous, nous listons le code:

    public void moveZeroes(int[] nums) {
        if(nums.length==0) return;
        if(nums.length==1) return;
        int i=0;
    
        while (i<nums.length&&nums[i]!=0) i++;
        int j=i;
        for(int k=i;k<nums.length;k++){
            if(nums[k]!=0){
                nums[j]=nums[k];
                nums[k]=0;
                j++;
                while(nums[j]!=0){
                    j++;
                }
            }
        }
        return;
    }

À ce moment, j'ai un problème que lorsque nums [i] est écrit à l'avant alors que tandis que le pointeur déborde, && ne doit pas faire attention à l'arrière si l'avant n'est pas établi, || est de ne pas regarder à l'arrière si l'avant est établi Oui, il faut noter que cela affectera le changement de variables!

Publié 17 articles originaux · aimé 0 · visites 143

Je suppose que tu aimes

Origine blog.csdn.net/qq_33286699/article/details/105487037
conseillé
Classement