Hướng dẫn rotate linked list in python - xoay danh sách được liên kết trong python

Xem thảo luận

Cải thiện bài viết

Lưu bài viết

  • Đọc
  • Bàn luận
  • Xem thảo luận

    Cải thiện bài viết

    Lưu bài viết

    Đọccounter-clockwise by k nodes.

    Examples:

    Bàn luận linked list = 10->20->30->40->50->60, k= 4
    Output: 50->60->10->20->30->40. 
    Explanation: k is smaller than the count of nodes in a linked list so (k+1 )th node i.e. 50 becomes the head node and 60’s next points to 10

    Đưa ra một danh sách được liên kết đơn lẻ, nhiệm vụ là xoay danh sách được liên kết ngược chiều kim đồng hồ bởi các nút K. linked list = 30->40->50->60, k= 2
    Output: 50->60->30->40. 

    Đầu vào: Danh sách được liên kết = 10-> 20-> 30-> 40-> 50-> 60, K = 4Output: 50-> 60-> 10-> 20-> 30-> 40. & NBSP; Giải thích: K nhỏ hơn so với số lượng các nút trong danh sách được liên kết, vì vậy nút (k+1), tức là 50 trở thành nút đầu và các điểm tiếp theo của 60 đến 10Below is the idea to solve the problem:

    Đầu vào: Danh sách được liên kết = 30-> 40-> 50-> 60, K = 2Output: 50-> 60-> 30-> 40. & nbsp;kth node to NULL, the next pointer of the last node should point to the previous head node, and finally, change the head to (k+1)th node. So we need to get hold of three nodes: kth node, (k+1)th node, and last node
    Traverse the list from the beginning and stop at kth node. store k’s next in a tem pointer and point k’s next to NULL then start traversing from tem and keep traversing till the end and point end node’s next to start node and make tem as the new head.

    Cách tiếp cận: Dưới đây là ý tưởng giải quyết vấn đề:

    • Để xoay danh sách được liên kết, chúng ta cần thay đổi con trỏ tiếp theo của nút KTH thành NULL, con trỏ tiếp theo của nút cuối cùng sẽ trỏ đến nút đầu trước đó và cuối cùng, thay đổi đầu thành nút (K+1). Vì vậy, chúng ta cần giữ ba nút: nút KTH, (k+1) nút và nút cuối cùng. & Nbsp; di chuyển danh sách từ đầu và dừng tại nút KTH. Lưu trữ Kiên tiếp theo trong một con trỏ tạm thời và điểm Kiên bên cạnh NULL sau đó bắt đầu đi qua TEM và tiếp tục đi qua cho đến cuối và điểm cuối nút Node bên cạnh để bắt đầu nút và làm TEM làm đầu mới.count variable with 0 and pointer kthnode pointing to Null and current pointing to head node.
    • Thực hiện theo các bước dưới đây để thực hiện ý tưởng:current till k-1 and point kthnode to current’s next and current’t next to NULL.
    • Khởi tạo một biến đếm với 0 và con trỏ kthnode trỏ đến null và dòng điện trỏ vào nút đầu.head.

    Hướng dẫn rotate linked list in python - xoay danh sách được liên kết trong python

    Di chuyển từ hiện tại đến K-1 và Point Kthnode & nbsp; sang hiện tại tiếp theo và hiện tại bên cạnh NULL.

    Hướng dẫn rotate linked list in python - xoay danh sách được liên kết trong python

    Di chuyển dòng điện từ nút KTH sang nút kết thúc và điểm hiện tại bên cạnh đầu.

    C++

    #include

    Hình ảnh dưới đây cho thấy cách xoay chức năng hoạt động trong mã:

    Dưới đây là việc thực hiện phương pháp trên:

    public:

    using namespace std;

        #include 3

    #include 4

    class Node {

    #include 9

        ____10 #include 1

    using3using4using5

        using7

    #include 5 #include 6#include 0 #include 8

        using1 using2

    using3namespace5

    using3namespace7

        namespace9

        ____10 namespace0

    using3using4using5

        std;7

        namespace2 namespace3

    using3namespace5

        class4

        class6

        class8

    namespace9

        using1 std;2

    #include 9

        namespace2 class0

        public0

        public2

        public4

    namespace9

    #include 5 Node {1#include 0 Node {3

    #include 9

        Node {6Node {7 Node {8

    using3:3:4using5

    using3:7

        namespace9

    namespace9

    #include 5 public7

    #include 9

            7

        namespace2 :1

    using3#include 04

        #include 06#include 07using5

        #include 10

        #include 12

    #include 0     2#include 5    4

        #include 10

            9 #include 00____10 #include 02

    namespace9

        #include 06#include 15using5

    #include 23

    #include 24

        using4 #include 21

    using namespace std;

    class Node {

    #include 4

        ____10 #include 1

    #include 9

        ____10 #include 1

    using3using4using5

    #include 5 #include 6#include 0 #include 8

    #include 5 #include 6#include 0 #include 8

        using1 using2

        ____10 namespace0

    using3namespace7

        namespace9

        ____10 namespace0

    using3using4using5

        namespace2 namespace3

        namespace2 namespace3

    using3namespace5

        class4

        class6

        class8

    namespace9

        using1 std;2

    #include 9

        namespace2 class0

    #include 5 Node {1#include 0 Node {3

        public0

        public2

        public4

    namespace9

        Node {6Node {7 Node {8

    #include 9

        Node {6Node {7 Node {8

    using3using19#include 00using21using22

    using3:7

        namespace9

    namespace9

    #include 5 public7

    #include 9

        namespace2 :1

        namespace2 :1

    using3#include 04

        using19#include 00#include 07using47

        #include 10

    #include 0     2#include 5    4

        using19#include 00#include 15using47

        #include 10

            9 #include 00____10 #include 02

    namespace9

        #include 06#include 15using5

        using4 #include 21

        using66

    C

    #include 25 Node {

    using3using74

        #include 25 #include 3

    using3#include 9

    using81using82

    using81using84using85using5

    using3namespace9

        namespace9

    #include 5 #include 35#include 25 #include 37#include 0 #include 8

        #include 9

    using3using1 namespace00namespace01    4

    using81using4using5

    using3namespace07

    using3#include 0 namespace10namespace11using5

    using3namespace2 namespace15using85namespace17

    using81namespace19

    using81namespace7

    using3namespace9

    using3using1 namespace26using85    4

    using81using4using5

    using3namespace33

    using3namespace2 namespace36using85    4

    using81namespace19

    using3namespace42

    using3namespace44

    using3namespace46using85using5

        namespace9

        #include 5 #include 84____10 Node {3

        #include 9

    using3namespace59Node {7 namespace61

    using3namespace63

    using3namespace65

        namespace9

        #include 5 namespace70

        #include 9

    using3namespace74

    using3namespace2 namespace77using85namespace17

    using81namespace81:4using47

    using81namespace85

    using3namespace9

    using3namespace89

        namespace9

        public namespace94 #include 5 namespace96

        #include 9

    using3std;00Node {7 std;02

    using3    9 #include 00#include 0 std;07____408std;09std;10std;11std;10    4

    using81std;15

    using3std;17std;18using47

    using3std;21

    using3std;23std;24using47

    using3std;17std;28using47

    using3std;21

        namespace9

    std;34

    Python

    class std;36

        std;38 std;39std;40std;41

    using3std;40std;4444445 std;46

    using3std;40std;49std;50 std;45 std;52

    class std;54

        std;38 std;39std;40std;59

    using3std;40std;62std;45 std;52

        std;38 #include 84std;40std;69

    using3std;71std;45 std;73

    using3std;75std;50 std;45 std;40std;79

    using3std;40std;62std;45 std;84

        std;38 using11std;40std;59

    using3std;91std;45 std;40std;79

    using3namespace2std;97

    using81std;99 class00

    using81std;91std;45 class04std;50

        std;38 #include 35std;40class10

    using3using1 class13std;45std;45 namespace01:

    using81using4

    using3class21std;45 std;40std;79

    using3class26std;45 namespace11

    using3namespace2class31class32

    using81class21std;45 class41std;50

    using81class26class45std;45 namespace11

    using3using1 class21class34 std;52:

    using81using4

    using3class57std;45 class59

    using3namespace2class62std;50 class34 class35

    using81class21std;45 class41std;50

    using81class26class45std;45 namespace11

    using3using1 class21class34 std;52:

    using3class57std;45 class59

    using3namespace2class62std;50 class34 class35

    using3class41std;50 std;45 std;40std;79

        Node {06

    using3std;40std;62std;45 class83std;50

    Node {09

    std;23std;24    4

    using3class83std;50 std;45 std;52

    Node {09

    C#

    class90std;45 class92

    Is

        using66

    std;99 Node {08

    std;99 Node {14

    using Node {17

    public class using64

    using3#include 9

    using81using82

    using81using84using85using5

    using3namespace9

        namespace9

        public class Node {

        #include 9

    using3public #include 0 #include 1

    using81using4using5

    using3namespace07

    using3public using74

    using3namespace2 namespace15using85namespace17

    using81namespace19

    using81namespace7

    using3namespace9

    using3using1 namespace26using85    4

    using81using4using5

    using3namespace33

    using3namespace2 namespace36using85    4

    using81namespace19

    using3namespace42

    using3namespace44

    using3namespace46using85using5

        namespace9

        #include 5 #include 84____10 Node {3

        #include 9

    using3namespace59Node {7 namespace61

    using3namespace63

    using3namespace65

        namespace9

        #include 5 namespace70

        #include 9

    using3namespace74

    using3namespace2 namespace77using85namespace17

    using81public37:4using47

    using81namespace85

    using3namespace9

    using3public45

        namespace9

        public namespace94 #include 5 public52

        #include 9

    using3std;00Node {7 std;02

    using3    9 #include 00#include 0 public63

    using81std;15

    using3public67std;18using47

    using3std;21

    using3public73

    using3public67std;28using47

    using3std;21

        namespace9

    namespace9

    JavaScript

    public83

    public84 public85

    public86public87

    using3public89

    using81public91public92

    using81public91public95using85using5

    using3namespace9

        namespace9

        :03 :04

    using3using1 using2

    using81using4using5

    using3public84 :13

    using3public84 namespace0

    using3namespace2 namespace15using85namespace17

    using81namespace19

    using81namespace7

    using3namespace9

    using3using1 namespace26using85    4

    using81using4using5

    using3public84 :38

    using3namespace2 namespace36using85    4

    using81namespace19

    using3namespace42

    using3namespace44

    using3namespace46using85using5

        namespace9

        :03 :58

    :59public84 :61Node {7 namespace61

    using3namespace63

    using3namespace65

        namespace9

        :03 :72

    :59public84 :75

    using3namespace2 namespace77using85namespace17

    using81:82:4using47

    using81namespace85

    using3namespace9

    using3:90:91using47

        namespace9

    using3    9 :97

    using81:99

    using3:90    02using47

    using3    05

    using3    07

    using3:90    10using47

    using3    05

        14

    Đầu ra

    Given linked list 
    10 20 30 40 50 60 
    Rotated Linked list 
    50 60 10 20 30 40 

    Độ phức tạp về thời gian: O (n), trong đó n là số lượng nút trong danh sách được liên kết.AUXILIARY Không gian: O (1) O(N), where N is the number of nodes in Linked List.
    Auxiliary Space: O(1)

    Vui lòng viết nhận xét nếu bạn tìm thấy bất cứ điều gì không chính xác, hoặc bạn muốn chia sẻ thêm thông tin về chủ đề được thảo luận ở trên.


    Làm thế nào để bạn xoay một phần tử trong một danh sách được liên kết?

    Để xoay danh sách được liên kết, chúng ta cần thay đổi con trỏ tiếp theo của nút KTH thành NULL, con trỏ tiếp theo của nút cuối cùng sẽ trỏ đến nút đầu trước đó và cuối cùng, thay đổi đầu thành nút (K+1).change the next pointer of kth node to NULL, the next pointer of the last node should point to the previous head node, and finally, change the head to (k+1)th node.

    Có một lệnh xoay trong Python?

    Chức năng xoay () được sử dụng để xoay hình ảnh bằng một góc trong Python..

    Làm thế nào để bạn xoay một danh sách trong việc cắt trong Python?

    Làm thế nào để xoay một danh sách trong Python..
    Bằng cách đi qua ..
    Bằng cách cắt lát ..
    Sử dụng chức năng Len () ..
    Sử dụng danh sách toàn diện ..
    Chúng ta có thể sử dụng Collections.deque.rotate ().

    Làm thế nào để bạn xoay một giá trị trong Python?

    Xoay một danh sách python..
    Sử dụng hàm rotate ().Các bộ sưu tập.....
    Sử dụng hàm numpy.roll ().Nếu bạn đã sử dụng Numpy, bạn có thể sử dụng hàm cuộn () xoay các phần tử mảng dọc theo một trục đã cho.....
    Sử dụng cắt lát ..