摘要: 点击查看代码 #include <iostream> #include <ctime> using namespace std; const int N = 1e5 + 10; int n; int a[N]; //从小到大 //插入排序 //第一个元素默认有序,然后从第二个元素开始与前面所有元素比 阅读全文
posted @ 2026-02-22 19:39 无酒无剑 阅读(2) 评论(0) 推荐(0)
摘要: include include using namespace std; const int N = 1e5 + 10; int n; int a[N]; //从小到大 //插入排序 //第一个元素默认有序,然后从第二个元素开始与前面所有元素比较 //若第二个元素小,则将大于它的所有元素统一右移,将 阅读全文
posted @ 2026-02-22 19:37 无酒无剑 阅读(3) 评论(0) 推荐(0)
摘要: 点击查看代码 // 要找到两个带头节点单链表的共同后缀起始位置,时间高效的核心思路是先计算两个链表的长度,让较长链表的指针先移动长度差的步数,再让两个指针同步遍历,首次相遇的节点就是共同后缀的起始位置。具体步骤如下: // 遍历str1和str2,分别计算两个链表的长度len1和len2。 // 计 阅读全文
posted @ 2025-12-26 20:50 无酒无剑 阅读(3) 评论(0) 推荐(0)
摘要: 点击查看代码 #include <stdio.h> int main(){ // 冒泡排序 /** * 冒泡排序是从头开始,相邻两个元素进行比较 * 要通过双重循环,第一重循环是元素间要比较的轮数,终止条件是元素个数减一, * 因为第一次是将数组中最大的元素移动到倒数第一个,第二次是将数组中第二大的 阅读全文
posted @ 2025-12-18 13:26 无酒无剑 阅读(3) 评论(0) 推荐(0)