Folder Log Crawler

WBOY
Lepaskan: 2024-07-18 10:20:06
asal
513 orang telah melayarinya

1598. Folder Log Crawler

Mudah

Sistem fail Leetcode menyimpan log setiap kali sesetengah pengguna melakukan operasi tukar folder.

Operasi diterangkan di bawah:

  • "../" : Beralih ke folder induk folder semasa. (Jika anda sudah berada dalam folder utama, kekal dalam folder yang sama).
  • "./" : Kekal dalam folder yang sama.
  • "x/" : Pindah ke folder anak bernama x (Folder ini dijamin sentiasa wujud).

Anda diberi senarai log rentetan di mana log[i] ialah operasi yang dilakukan oleh pengguna pada langkah ike.

Sistem fail bermula dalam folder utama, kemudian operasi dalam log dilakukan.

Kembalikan bilangan minimum operasi yang diperlukan untuk kembali ke folder utama selepas operasi tukar folder.

Contoh 1:

Crawler Log Folder

  • Input: log = ["d1/","d2/","../","d21/","./"]
  • Output: 2
  • Penjelasan: Gunakan operasi tukar folder "../" ini 2 kali dan kembali ke folder utama.

Contoh 2:

Crawler Log Folder

  • Input: log = ["d1/","d2/","./","d3/","../","d31/"]
  • Output: 3

Contoh 3:

  • Input: log = ["d1/","../","../","../"]
  • Output: 0

Kekangan:

  • 1 <= logs.length <= 103
  • 2 <= log[i].panjang <= 10
  • log[i] mengandungi huruf kecil Inggeris, digit, '.' dan '/'.
  • log[i] mengikut format yang diterangkan dalam penyata.
  • Nama folder terdiri daripada huruf kecil dan digit Inggeris.

Penyelesaian:

class Solution {

    /**
     * @param String[] $logs
     * @return Integer
     */
    function minOperations($logs) {
        $depth = 0;

        foreach ($logs as $log) {
            if ($log == "../") {
                if ($depth > 0) {
                    $depth--;
                }
            } elseif ($log != "./") {
                $depth++;
            }
        }

        return $depth;
    }
}




Pautan Kenalan

  • LinkedIn
  • GitHub

Atas ialah kandungan terperinci Folder Log Crawler. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan