- 博客(98)
- 收藏
- 关注
原创 解决使用VisualC++2010时无法打开源文件bits/stdc++.h万能头文件
进入vc2010安装路径include下创建bits文件夹。
2024-11-18 14:45:47
937
原创 C语言实现408考研真题2022年42题
i++){ // 循环初始化数组元素。// 打印未排序的静态表。// 保存第一个元素。// 动态分配的数组指针。// 左子节点的索引。
2024-11-04 14:35:48
355
原创 C语言实现408考研真题2016年43题
/ low0只是做暂存,为下次使用准备,这里我们++low后,low比分割值大1。// high0只是做暂存,为下次使用准备。if(low < k - 1) // 如果枢轴小于目标位置,则在左侧继续查找。if(low == k - 1) // 如果枢轴是第 n/2 小元素,划分成功。// 把上次暂存的high0拿过来。// 把上次暂存的low0拿过来。// 把分割值放到对应的位置。else // 如果枢轴大于目标位置,则在右侧继续查找。// 当low等于k-1,也就是n/2-1时,分割结束。
2024-10-31 11:02:23
437
原创 C语言实现归并排序
i++){ // 循环初始化数组元素。// 如果左半部分还有剩余元素,则将其复制到数组A中。// 如果右半部分还有剩余元素,则将其复制到数组A中。
2024-10-31 10:19:51
710
原创 C语言实现选择排序
/ 将原来基准点的值放到较小值原来的位置。// 声明用于迭代的索引变量i、j以及临时交换变量tem。// 打印未排序的静态表。// 如果当前基准点的值大于后续元素中的任何一个,则记录下来。// 从i+1开始遍历剩余未排序的部分,寻找最小值的位置。// 交换当前基准点与找到的更小值的位置。
2024-10-30 20:26:04
332
原创 C语言实现插入排序
/ 声明用于迭代的索引变量i、j以及待插入的值insertVal。i++){ // 循环初始化数组元素。// 将当前元素保存到insertVal中。// 将较大的元素向右移。// 当前元素的正确位置找到后,将insertVal插入。// 比较并移动大于insertVal的元素向右移一位。
2024-10-30 20:10:44
363
原创 C语言实现冒泡排序
if(A[j-1] > A[j]){ // 如果前一个元素大于后一个元素,则交换它们的位置。j--){ // 内层循环比较相邻元素。i++){ // 循环初始化数组元素。// 保存第一个元素。
2024-10-24 13:02:43
390
原创 C语言实现考研408真题2011年42题
if((s1 + d1) % 2 == 0) { //若元素个数为奇数,这里注意数组下标从0开始。if ((s1 + d1) % 2 == 0) { //若元素个数为奇数。//舍弃 A 中间点以前的部分且保留中间点。//舍弃 B 中间点以后的部分且保留中间点。//舍弃 B 中间点以后的部分且保留中间点。//舍弃 A 中间点以后的部分且保留中间点。//舍弃 B 中间点以前的部分且保留中间点。//舍弃 A 中间点以后部分且保留中间点。}else if(A[m1]<B[m2])//满足条件2。
2024-10-21 13:52:51
371
原创 C语言实现二叉顺序数建树查找删除
T->key) { // 循环直到找到或到达叶子节点。else if(root->key < x) // 如果当前节点的键值小于目标键值,则向右子树移动。else if(root->rchild == NULL) // 情况2:没有右子树。if (key > T->key) { // 如果键值大于当前节点,向右子树移动。if(root->key > x) // 如果当前节点的键值大于目标键值,则向左子树移动。if (k > p->key) { // 如果键值大于当前节点,向右子树移动。
2024-10-21 13:16:04
627
原创 C语言实现二叉排序树建树查找
T->key) { // 循环直到找到或到达叶子节点。} else if (k < p->key) { // 如果键值小于当前节点,向左子树移动。if (key > T->key) { // 如果键值大于当前节点,向右子树移动。if (k > p->key) { // 如果键值大于当前节点,向右子树移动。// 初始化当前节点和父节点。// 节点存储的键值。T) { // 如果树为空,直接插入新节点作为根节点。
2024-10-20 23:10:40
585
原创 C语言实现二分查找
else if(key < ST.elem[mid]) { // 如果查找的键小于中间位置的值。i++) { // 从位置1开始打印,忽略位置0。// 返回两个整数的差值,用于排序。if(key > ST.elem[mid]) { // 如果查找的键大于中间位置的值。
2024-10-20 13:41:06
928
原创 C语言实现顺序查找
include <time.h> // 引入时间处理头文件,用于声明time和srand函数。i++) { // 从位置1开始打印,忽略位置0。// 查找输入的key。// 获取用户的输入。if(pos) { // 如果pos不为0,则找到了key。
2024-10-20 13:10:15
771
原创 C语言实现考研408真题2014年41题
/pcur->p左孩子为空,就放入左孩子。//pcur->p右孩子为空,就放入右孩子。//当前结点左右孩子都有了,pcur就指向下一个。//第一个结点即是队列头,也是队列尾。//pcur要指向要进入树的父亲元素。//tree是指向树根的,代表树。//tree指向树的根结点。//用来指向新申请的树结点。//如果是树的第一个结点。
2024-10-19 15:33:13
358
原创 C语言实现二叉树层序遍历
/也叫先序遍历,先打印当前结点,打印左孩子,打印右孩子。//先打印左孩子,打印右孩子,最后打印父亲。//先打印左孩子,打印父亲,打印右孩子。//pcur->p左孩子为空,就放入左孩子。//pcur->p右孩子为空,就放入右孩子。//拿到第一个结点,存入q。
2024-10-19 15:01:30
962
原创 C语言实现二叉树的前序(深度优先),中序,后序遍历
/pcur->p左孩子为空,就放入左孩子。//pcur->p右孩子为空,就放入右孩子。//当前结点左右孩子都有了,pcur就指向下一个。//第一个结点即是队列头,也是队列尾。//pcur要指向要进入树的父亲元素。//tree是指向树根的,代表树。//tree指向树的根结点。//用来指向新申请的树结点。//树的某一个结点的地址值。//如果是树的第一个结点。//tag结构体是辅助队列使用的。
2024-10-14 09:00:50
267
原创 C语言实现二叉树
/pcur->p左孩子为空,就放入左孩子。//pcur->p右孩子为空,就放入右孩子。//当前结点左右孩子都有了,pcur就指向下一个。//第一个结点即是队列头,也是队列尾。//pcur要指向要进入树的父亲元素。//tree是指向树根的,代表树。//tree指向树的根结点。//用来指向新申请的树结点。//树的某一个结点的地址值。//如果是树的第一个结点。//tag结构体是辅助队列使用的。
2024-10-11 18:25:16
290
原创 C语言实现循环队列SqQueue
/ 使用结构体定义一个顺序队列,包含一个数组用于存储元素,以及两个指针,front 和 rear,分别指向队列的头部和尾部下一个位置。// 将队列的前后端指针都初始化为0。if(Q.rear == Q.front) // 如果前后端指针相等,则队列为空。// 队列的数据部分。// 如果队尾的下一个位置与队头指针重合,说明队列已满,不能继续入队。// 队列的前端指针和后端指针。// 如果前后端指针相等,说明队列为空,不能出队。// 尝试向已满的队列中插入元素。// 向队列中插入几个元素。
2024-10-08 23:30:55
452
原创 C语言实现栈的初始化入栈出栈
/ 如果栈顶指针为-1,则栈为空。// 输出获取的栈顶元素。// 获取栈顶元素,并更新栈顶指针。// 初始化栈顶指针为-1,表示栈为空。// 栈顶指针,初始值为-1,表示栈空。
2024-10-04 16:46:52
559
原创 C语言实现4082019年考研真题41题linklist_2019_41
/ LinkList是LNode类型的指针别名。// 最后一个结点的next设为NULL。// 初始化头结点的next为NULL。// 确保L2的next为NULL。// 指向下一个结点的指针。= 9999){ // 输入9999作为结束标志。
2024-10-04 15:59:22
322
原创 C语言实现线性表的链式表示,创建,插入,查找,删除
if(L->data == SearchVal) // 如果找到匹配的值则返回该结点。// 最后一个结点的next设为NULL。// 初始化头结点的next为NULL。// 初始化头结点的next为NULL。
2024-09-24 09:11:13
353
原创 C语言实现顺序表存储插入删除重新
/ 打印元素的位置。// 打印被删除的元素。// 存储数据的数组。// 用于存储删除的元素。// 用于存储操作结果。// 插入操作函数,将元素插入到顺序表的指定位置。// 查找操作函数,查找指定元素在顺序表中的位置。if(retr){ // 如果检索成功。// 将第 i 个及其后的元素向后移。if(ret){ // 如果插入成功。
2024-09-21 21:19:50
460
原创 Java中GUI简单模拟用户登录功能的实现
JOptionPane.showMessageDialog(null,"登录成功");JOptionPane.showMessageDialog(null,"登录失败");JButton jButton = new JButton("登录");JLabel jLabel = new JLabel("用户名");JLabel jLabel2 = new JLabel("密码");JFrame jf = new JFrame("用户登录");当输入正确的用户名和密码时发出消息提示登录成功。
2024-03-26 13:28:12
578
1
原创 java实现使用Huffman编码对数字串进行压缩,可以配合ascii码将结果转成更短的串
import java.util.*; class HuffmanNode implements Comparable<HuffmanNode> { int data; char character; HuffmanNode left, right; public HuffmanNode(int data, char character) { this.data = data;
2023-10-29 22:07:23
280
原创 快速排序双边循环java实现
if(l>=h){return;j--;i++;return i;int t;t=a[i];a[i]=a[j];a[j]=t;
2023-10-23 06:51:15
211
原创 lomuto单边循环快速排序用java实现,以及优化减少交换次数
因为swap在交换两个值时可能出现两个值相等的情况,因此在前面加一个if条件判断如果两个值不相等再进行交换
2023-10-22 19:58:44
172
原创 选择排序java
i++) {int s=i;j<a.length;j++){s=j;if(s!=i){int t;t=a[i];a[i]=a[j];a[j]=t;
2023-10-22 09:21:59
64
原创 冒泡排序用java实现,以及使用boolean来减少排序次数
System.out.println("第"+(j+1)+"轮比较结果:"+Arrays.toString(a));System.out.println("第"+(j+1)+"轮第"+(i+1)+"次比较");
2023-10-21 09:49:55
67
原创 二分法查找数组中的数的索引用java实现,以及如何优化算法防止超出阈值报错。
System.out.println(target+"在数组中的索引是:"+idx);//将左边界与右边界的索引求和除二得到m。//>>>1将运算结果移位。return -1;//查找失败,说明数组中没有此数。
2023-10-21 08:52:02
67
原创 java的多线程和线程池相关知识介绍
Java提供了`java.util.concurrent.Executor`接口和`java.util.concurrent.ExecutorService`接口来表示线程池,以及`java.util.concurrent.ThreadPoolExecutor`类作为线程池的默认实现。- 如果阻塞队列已满,并且线程池中的线程数已达到最大线程数,根据线程池的拒绝策略来决定如何处理任务。- 如果阻塞队列已满,而且线程池中的线程数未达到最大线程数,将会创建一个新线程来执行任务。
2023-09-06 19:07:23
62
原创 介绍如何搭建 Spring 的开发环境。
在这个例子中,我们使用 `ClassPathXmlApplicationContext` 类加载了 `applicationContext.xml` 文件,并使用 `context.getBean()` 方法获取 myBean 对象,并调用其 `show()` 方法。接下来,创建一个名为 `applicationContext.xml` 的新文件,用于配置 Spring 应用程序的上下文。创建一个包含 `main` 方法的 Java 类,并使用 Spring 的应用程序上下文来加载和运行应用程序。
2023-06-04 11:32:51
1096
原创 介绍如何搭建 Vue.js 的环境。
在这个例子中,我们在项目文件夹中创建了一个 `index.html` 文件,并在该文件中添加一个名为 `app` 的 id,以便 Vue.js 可以在此处渲染内容。在安装 Vue.js 之前,需要先安装 Node.js。Vue CLI 可以极大地简化 Vue.js 应用程序的构建过程,帮助您创建一个基于 Vue.js 的应用程序,并自动安装所需的依赖项和插件。Vue.js 是一款流行的前端框架,如果您想要开始学习 Vue.js 并开始构建应用程序,您需要在计算机上安装Vue.js的开发环境。
2023-06-04 11:30:33
406
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人