summaryrefslogtreecommitdiff
path: root/0083/main.c
diff options
context:
space:
mode:
authorMistivia <i@mistivia.com>2025-09-10 11:06:44 +0800
committerMistivia <i@mistivia.com>2025-09-10 11:06:44 +0800
commitfa2f1e66d3d1e6dca086a6e8275ba25ded8b34b9 (patch)
tree0fc30995203a082a52dce568eaffadc93060e5b5 /0083/main.c
parentad95cba8220e2a7c86362caeb76e1a4333e9c2b8 (diff)
solve 83
Diffstat (limited to '0083/main.c')
-rw-r--r--0083/main.c35
1 files changed, 35 insertions, 0 deletions
diff --git a/0083/main.c b/0083/main.c
new file mode 100644
index 0000000..1309a54
--- /dev/null
+++ b/0083/main.c
@@ -0,0 +1,35 @@
+#include <stdlib.h>
+
+struct ListNode {
+ int val;
+ struct ListNode *next;
+};
+
+// begin
+
+/**
+ * Definition for singly-linked list.
+ * struct ListNode {
+ * int val;
+ * struct ListNode *next;
+ * };
+ */
+
+struct ListNode* deleteDuplicates(struct ListNode* head) {
+ if (head == NULL) {
+ return head;
+ }
+ struct ListNode *prev = head;
+ struct ListNode *node = head->next;
+ while (node != NULL) {
+ if (node->val == prev->val) {
+ struct ListNode *next = node->next;
+ prev->next = next;
+ node = next;
+ } else {
+ node = node->next;
+ prev = prev->next;
+ }
+ }
+ return head;
+} \ No newline at end of file