Kata kunci hasil memungkinkan suatu fungsi untuk kembali ke tempat sebelumnya ketika dipanggil lagi. Ini adalah perbedaan kritis dari fungsi biasa. Fungsi reguler tidak dapat kembali ke tempat yang ditinggalkannya. Kata kunci hasil membantu fungsi untuk mengingat statusnya. Hasil memungkinkan fungsi untuk menangguhkan dan melanjutkan sementara ternyata nilai pada saat penangguhan eksekusi. Show
Python3
[1, 2, 3] [4, 5, 6] [7, 8, 9]0 [1, 2, 3] [4, 5, 6] [7, 8, 9]1 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [1, 2, 3] [4, 5, 6] [7, 8, 9]3 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [1, 2, 3] [4, 5, 6] [7, 8, 9]1 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [1, 2, 3] [4, 5, 6] [7, 8, 9]7 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [1, 2, 3] [4, 5, 6] [7, 8, 9]9 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)0 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)2 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)4 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)6 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)8 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)9 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]1 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]3 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]4
[[1, 2, 3, 4], [5, 6, 7, 8], [9]]5 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]6 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]7 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]8 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]_9 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]9 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]1 ________21______9 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]3 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]4 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]5 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]6________31______7________31______8 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]0________40______1 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]2 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]3 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]4 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]5 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]6
[(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]_7 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]_8 ________40 [1, 2, 3] [4, 5, 6] [7, 8, 9]_281_______ [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]1
[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]2 = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]4 [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]5 [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]6 [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]7 Keluaran [['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']] Metode 2. Memecah daftar menjadi potongan ukuran N dengan Python menggunakan loopDalam contoh ini, kami menggunakan loop di python dan mengiris daftar yang akan membantu kami memecah daftar menjadi potongan-potongan Python3
[1, 2, 3] [4, 5, 6] [7, 8, 9]0 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]1 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]3 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]5 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]7 [1, 2, 3] [4, 5, 6] [7, 8, 9]2_______50__0____1_______ [1, 2, 3] [4, 5, 6] [7, 8, 9]9 my_list 2[1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 4[1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 6[1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 8[[1, 2, 3, 4], [5, 6, 7, 8], [9]]4
[array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]8
[(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]0 = 6
[0, 1, 2] [3, 4, 5] [6, 7, 8] [9]5 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]3 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]4 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]5 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]6 [1, 2, 3] [4, 5, 6] [7, 8, 9]04 ________21______9 [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]2 = [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]4 ________21______9 [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]6 [1, 2, 3] [4, 5, 6] [7, 8, 9]11 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]5 [1, 2, 3] [4, 5, 6] [7, 8, 9]13 Keluaran [1, 2, 3] [4, 5, 6] [7, 8, 9] Metode 3. Memecah daftar menjadi potongan ukuran N dengan Python menggunakan pemahaman DaftarIni adalah cara yang elegan untuk memecah daftar menjadi satu baris kode untuk membagi daftar menjadi beberapa daftar dengan Python Python3
[1, 2, 3] [4, 5, 6] [7, 8, 9]0 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]1 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]3 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]5 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]7 [1, 2, 3] [4, 5, 6] [7, 8, 9]2_______50__0____1_______ [1, 2, 3] [4, 5, 6] [7, 8, 9]27 my_list 2[1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 4[1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 6[1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 8[[1, 2, 3, 4], [5, 6, 7, 8], [9]]4
[(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]_7 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]_8 ________40 [1, 2, 3] [4, 5, 6] [7, 8, 9]_281_______ [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]7
[1, 2, 3] [4, 5, 6] [7, 8, 9]_41 [1, 2, 3] [4, 5, 6] [7, 8, 9]42 = [1, 2, 3] [4, 5, 6] [7, 8, 9]44 [1, 2, 3] [4, 5, 6] [7, 8, 9]45 [1, 2, 3] [4, 5, 6] [7, 8, 9]46 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]5 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]1 [1, 2, 3] [4, 5, 6] [7, 8, 9]49 [1, 2, 3] [4, 5, 6] [7, 8, 9]45 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]6 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]3 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]4 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]5 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]6 [1, 2, 3] [4, 5, 6] [7, 8, 9]56 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]0 = 6[(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]5 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]9 [1, 2, 3] [4, 5, 6] [7, 8, 9]61 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]1 [1, 2, 3] [4, 5, 6] [7, 8, 9]49 [1, 2, 3] [4, 5, 6] [7, 8, 9]64 [1, 2, 3] [4, 5, 6] [7, 8, 9]64 [1, 2, 3] [4, 5, 6] [7, 8, 9]66 [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]6 [1, 2, 3] [4, 5, 6] [7, 8, 9]68 Keluaran [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1) Implementasi Alternatif. Python3[1, 2, 3] [4, 5, 6] [7, 8, 9]69 = [1, 2, 3] [4, 5, 6] [7, 8, 9]0 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]1 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]3 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]5 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]7 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]1 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 2[1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 4[1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 6[1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 8[[1, 2, 3, 4], [5, 6, 7, 8], [9]]4 [1, 2, 3] [4, 5, 6] [7, 8, 9]_90 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]_7 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]_8 ________40 [1, 2, 3] [4, 5, 6] [7, 8, 9]_281_______ [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]7 [1, 2, 3] [4, 5, 6] [7, 8, 9]_90 [1, 2, 3] [4, 5, 6] [7, 8, 9]_41 [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]2 = [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)00 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]5 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]6 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]3 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]4 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________g [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]6 [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]7 Keluaran [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Metode 4. Memecah daftar menjadi potongan ukuran N dengan Python menggunakan NumpyDi sini, kami menggunakan Numpy. array_split, yang membagi array menjadi n potongan dengan ukuran yang sama Python3[[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)_14 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)15
[[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)16 = [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]6 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]7 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)20 [1, 2, 3] [4, 5, 6] [7, 8, 9]49 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)_22 my_list 2[1, 2, 3] [4, 5, 6] [7, 8, 9]49 Keluaran [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])] Metode 5. Memecah daftar menjadi potongan ukuran N dengan Python menggunakan itertoolDalam contoh ini, kita akan menggunakan itertool untuk mengiris setiap larik dengan ukuran yang sama. kami melewati parameter dalam kisaran 30 dan ukuran split 5 Python3[[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)25 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)26 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)14 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)28
[[1, 2, 3, 4], [5, 6, 7, 8], [9]]7 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)30 ________21______9 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)32 = [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)34 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)35 ________21______9 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)37 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)34 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]7 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)_40 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)41 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)42 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)43
[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]4 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)45 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]6 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]7 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)20 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)49 [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]1 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)51 Keluaran [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)] Metode 6. KoleksiSalah satu pendekatan untuk membagi daftar menjadi potongan berukuran N tanpa menggunakan loop adalah dengan menggunakan modul collections. Modul koleksi memiliki kelas deque yang memungkinkan Anda dengan mudah membagi daftar menjadi potongan-potongan dengan ukuran tertentu Berikut adalah contoh bagaimana Anda dapat menggunakan kelas deque untuk membagi daftar menjadi potongan berukuran N Python3[[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)25 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)53 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)14 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)55
[[1, 2, 3, 4], [5, 6, 7, 8], [9]]7 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)57 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)58 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)59 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)58 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)61 = [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)63 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)_58 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)65 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)58 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)67 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)68 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)_69 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)70 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)_69 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)72 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)69 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)74 = [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)76 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)69 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]3 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)79 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]5 [array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19]), array([20, 21, 22, 23, 24]), array([25, 26, 27, 28, 29])]6 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)82 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]2 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)84 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)68 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)_86 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)87 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]_2 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)_69 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)90 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)69 [(0, 1, 2, 3, 4), (5, 6, 7, 8, 9), (10, 11, 12, 13, 14), (15, 16, 17, 18, 19), (20, 21, 22, 23, 24), (25, 26, 27, 28, 29)]3 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)74 [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)94 = [1, 2, 3] [4, 5, 6] [7, 8, 9]0 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]1 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]3 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]5 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]7 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]1 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 2[1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 4[1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 6[1, 2, 3] [4, 5, 6] [7, 8, 9]2 my_list 8[1, 2, 3] [4, 5, 6] [7, 8, 9]2 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]15 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]4 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]17 = [0, 1, 2] [3, 4, 5] [6, 7, 8] [9]5 ________21______20 [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]4 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]23 [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]6 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]25 [[1, 2, 3, 4], [5, 6, 7, 8], [9]]26 Keluaran [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]] Kelas deque memungkinkan Anda untuk dengan mudah menghapus elemen dari sisi kiri atau kanan daftar, membuatnya mudah untuk membagi daftar menjadi potongan-potongan dengan ukuran tertentu. Kode menggunakan while loop dan fungsi generator untuk mengulangi daftar dan menghasilkan potongan satu per satu. Perulangan terputus saat deque kosong, yang menunjukkan bahwa semua elemen telah diproses Pendekatan ini memiliki kompleksitas waktu O(n) dan kompleksitas ruang O(n), di mana n adalah ukuran daftar input Bagaimana Anda membagi matriks menjadi sub matriks dengan Python?Anda dapat menggunakan numpy. fungsi split() untuk membagi array menjadi lebih dari satu sub-array secara vertikal (baris).
Bagaimana Anda menghasilkan semua Submatriks dari suatu matriks?Ini dapat dilakukan dalam O(1) waktu. Misalkan indeks suatu elemen adalah (X, Y) dalam pengindeksan berbasis 0, maka jumlah submatriks (Sx, y) untuk elemen ini dapat diberikan dengan rumus . x, y = (X + 1) * (Y + 1) * (N – X) * (N – Y).
Bisakah sebuah matriks menjadi submatriks dari dirinya sendiri?Submatriks utama dari sebuah matriks adalah matriks itu sendiri dan submatriks tersebut diperoleh darinya dengan mencoret baris dan kolom dari indeks yang sama berulang kali. |