115 對鍊錶進行插入排序

2021-09-24 01:19:13 字數 1282 閱讀 8236

題目描述:

使用list放入listnode,然後依據插入排序進行,這個時間少,空間複雜度低

**:

/**

* definition for singly-linked list.

* public class listnode

* }*/class solution

// 鍊錶頭部

listnode pre = new listnode(-1);

listlistnode = new arraylist<>();

pre.next = head;

listnode.add(pre);

listnode.add(head);

listnode tem = head.next;

while (tem != null)

size --;

}listnode.add(size + 1,tem);

tem = getlistnode;

} for (int i = 0; i < listnode.size() - 1; i++)

listnode.get(listnode.size() - 1).next = null;

return listnode.get(0).next;}}

如果複雜度不允許那麼需要考慮的就是把前乙個節點得到,然後遍歷

**

/**

* definition for singly-linked list.

* public class listnode

* }*/class solution

listnode tem = pre;

while (tem.next.val < head.next.val)

listnode tempre = tem.next;

listnode temnext = head.next.next;

tem.next = head.next;

head.next.next = tempre;

head.next = temnext;

}

return pre.next;}}

對鍊錶進行插入排序

1.問題描述 對鍊錶進行插入排序。插入排序的動畫演示如上。從第乙個元素開始,該鍊錶可以被認為已經部分排序 用黑色表示 每次迭代時,從輸入資料中移除乙個元素 用紅色表示 並原地將其插入到已排好序的鍊錶中。插入排序演算法 插入排序是迭代的,每次只移動乙個元素,直到所有元素可以形成乙個有序的輸出列表。每次...

對鍊錶進行插入排序

對鍊錶進行插入排序。插入排序演算法 插入排序是迭代的,每次只移動乙個元素,直到所有元素可以形成乙個有序的輸出列表。每次迭代中,插入排序只從輸入資料中移除乙個待排序的元素,找到它在序列中適當的位置,並將其插入。重複直到所有輸入資料插入完為止。示例 1 輸入 4 2 1 3 輸出 1 2 3 4 示例 ...

對鍊錶進行插入排序

描述 對鍊錶進行插入排序。插入排序的動畫演示如上。從第乙個元素開始,該鍊錶可以被認為已經部分排序 用黑色表示 每次迭代時,從輸入資料中移除乙個元素 用紅色表示 並原地將其插入到已排好序的鍊錶中。插入排序演算法 插入排序是迭代的,每次只移動乙個元素,直到所有元素可以形成乙個有序的輸出列表。每次迭代中,...