Linked list in C#
Node structure
public class ListNode {
public int val;
public ListNode next;
public ListNode(int val = 0, ListNode next = null) {
this.val = val;
this.next = next;
}
}Problems to practice
- Reverse Linked List
- Remove Nth Node from End
- Merge Two Sorted Lists
- Detect Cycle
- Middle of the Linked List
- Intersection of Two Linked Lists
Example: reverse list
public ListNode ReverseList(ListNode head) {
ListNode prev = null;
ListNode curr = head;
while (curr != null) {
ListNode next = curr.next;
curr.next = prev;
prev = curr;
curr = next;
}
return prev;
}Can you explain it without the notes?
Linked list in C#
Use your own words. Explain an example and one limitation before checking the explanation.
Check your explanation
Node structure
Turn this concept into a clear answer.
Practice this conceptAdapted from 17_DSA_DOTNET.md · “4. Linked list in C#”. Examples are study fragments; framework behavior can depend on your version.