Heim  >  Artikel  >  Java  >  So lösen Sie das Problem von Java-Arrays, zweidimensionalen Arrays und dem Ersetzen von Leerzeichen

So lösen Sie das Problem von Java-Arrays, zweidimensionalen Arrays und dem Ersetzen von Leerzeichen

王林
王林nach vorne
2023-04-30 12:37:14819Durchsuche

Doppelte Zahlen im Array

Titelbeschreibung

So lösen Sie das Problem von Java-Arrays, zweidimensionalen Arrays und dem Ersetzen von Leerzeichen

Detaillierte Erläuterung der Ideen

#🎜🎜 #Diese Frage Die Idee ist relativ einfach. Sortieren Sie zuerst das Array, durchlaufen Sie das Array und finden Sie die aktuelle Ausgabe, die mit der vorherigen identisch ist. Ausgabe nicht gefunden -1.

Hinweis: Bitte beachten Sie bei dieser Methode, dass der Index bei der Schleife bei 1 beginnen muss, andernfalls wird eine Array-Index-Ausnahme gemeldet.

Code und Ergebnis

import java.util.*;
public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param numbers int整型一维数组 
     * @return int整型
     */
    public int duplicate (int[] numbers) {
        // write code here
        Arrays.sort(numbers);
        for(int i = 1 ; i < numbers.length; i++)
            if(numbers[i] == numbers[i - 1]) return numbers[i];
        return -1;
    }
}

Suche in zweidimensionalem Array

Problembeschreibung

#🎜 🎜#So lösen Sie das Problem von Java-Arrays, zweidimensionalen Arrays und dem Ersetzen von LeerzeichenDetaillierte Erklärung der Ideen

Diese Frage ist etwas schwierig. Nachdem ich die Frage sorgfältig gelesen hatte, stellte ich fest, dass die Zeilen und Spalten dieses zweistelligen Arrays größer sind. Das bedeutet, dass das obere linke Element das kleinste und das untere rechte Element das größte ist Element darüber und kleiner als das Element rechts oben. Im Gegenteil.

Nach dieser Regel können wir von unten links beginnen und je nach Situation nach oben oder rechts suchen. Gleichzeitig müssen wir zunächst die besondere Situation beurteilen. Spezifische Details zum Code.

Code und Ergebnisse

public class Solution {
    public boolean Find(int target, int [][] array) {
        //优先判断特殊
        if(array.length == 0) 
            return false;
        int n = array.length;
        if(array[0].length == 0) 
            return false;
        int m = array[0].length;
        //从最左下角的元素开始往左或往上
        for(int i = n - 1, j = 0; i >= 0 && j < m; ){
            //元素较大,往上走
            if(array[i][j] > target)  
                i--;
            //元素较小,往右走
            else if(array[i][j] < target)
                j++;
            else
                return true;
        }
        return false;
    }
}

Leerzeichen ersetzen

Problembeschreibung

#🎜 🎜#Detaillierte Erklärung der IdeenSo lösen Sie das Problem von Java-Arrays, zweidimensionalen Arrays und dem Ersetzen von Leerzeichen

Die Idee, Leerzeichen in dieser Frage zu ersetzen, ist relativ einfach.

Wir durchlaufen die Zeichenfolge und speichern sie in einem temporären Zeichenarray. Beim Durchlaufen stellen wir direkt fest, ob sie leer ist. Wenn sie direkt mit den drei Zeichen „%20“ hinzugefügt wird, geben wir sie aus das Ende.

Hinweis: Die Größe des temporären Arrays ist auf das Dreifache der Länge der Zeichenfolge festgelegt, was genau richtig ist. Unter der Annahme, dass die Zeichenfolge nur aus Leerzeichen besteht, kann dies auch erfüllt werden. Gleichzeitig sollten Sie auch auf die Verwendung stringbezogener Methoden achten.

code&result

import java.util.*;
public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param s string字符串 
     * @return string字符串
     */
   public String replaceSpace(String s) {
    int length = s.length();
    char[] array = new char[length * 3];
    int index = 0;
    for (int i = 0; i < length; i++) {
        char c = s.charAt(i);
        if (c == &#39; &#39;) {
            array[index++] = &#39;%&#39;;
            array[index++] = &#39;2&#39;;
            array[index++] = &#39;0&#39;;
        } else {
            array[index++] = c;
        }
    }
    String newStr = new String(array, 0, index);
    return newStr;
}
}

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem von Java-Arrays, zweidimensionalen Arrays und dem Ersetzen von Leerzeichen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen