自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 数据库相关的操作

MySql语法

2023-03-07 10:41:31 340

原创 产生随机数 java.util.Random;

随机数的产生,Random类的使用

2022-08-07 14:48:29 998

原创 StringBuffer类 和StringBuilder类

StringBuffer类 和StringBuilder类

2022-07-31 09:58:24 289

原创 Java String类中的构造方法和方法

Java String类中的构造方法和方法

2022-07-30 20:53:13 401

原创 String 常用构造方法

String 常用构造方法

2022-07-30 09:59:40 223

原创 JAVA 折半查找

折半查找

2022-07-29 20:18:16 576

原创 JAVA 冒泡排序 选择排序

冒泡排序 选择排序

2022-07-29 20:16:49 191

原创 finalize()方法 垃圾销毁时机

finalize()方法 垃圾销毁时机

2022-07-28 10:03:29 89

原创 “==” 与 equals

“==” 与 equals

2022-07-27 21:42:14 61

原创 权限 public private protected 默认

权限 public private protected 默认

2022-07-27 16:11:42 121

原创 Java 抽象类与接口的区别

接口与抽象类的区别

2022-07-27 15:27:47 170

原创 Java 接口 interface

JAVA 接口 interface

2022-07-27 15:21:23 177

原创 JAVA 抽象类

Java 抽象类

2022-07-24 12:12:39 186

原创 final 表示最终的,不可变的

final

2022-07-24 00:56:51 258

原创 C语言杨辉三角

#include<stdio.h>#define N 10int main(){ static int A[N][N];//定义二维数组 for (int i = 0; i < N; i++)//第一列与对角线赋值为全1 { A[i][0] = 1; A[i][i] = 1; } for (int i = 2; i < N; i++)//赋值其他元素的值 { for (int j = 1; j < i; j++) { A[i][j] .

2021-09-24 20:12:38 149

原创 二叉树权值的计算

#include<stdio.h>#include<stdlib.h>#include<malloc.h>#define ElemType inttypedef struct BitNode{ ElemType weight; struct BitNode* lchild, * rchild;}BitNode, * BiTree;ElemType GreatTree(BiTree& T){ ElemType data; scanf_.

2021-07-23 18:54:07 4169

原创 二叉树求叶子节点

#include<stdio.h>#include<stdlib.h>#include<malloc.h>#define ElemType inttypedef struct BitNode{ ElemType weight; struct BitNode* lchild, * rchild;}BitNode, * BiTree;ElemType GreatTree(BiTree& T){ ElemType data; sca.

2021-07-23 18:27:22 882

原创 选择排序:简单选择排序与堆排序

#include<stdio.h>#include<stdbool.h>#define ElemType int#define MaxSize 50void Swap(ElemType& a, ElemType& b)//交换a,b两元素的值{ ElemType temp = a; a = b; b = temp;}void SelectSort(ElemType A[], int n)//简单选择排序{ int i = 0, mi.

2021-07-20 21:56:13 70

原创 神奇的网站

https://www.cs.usfca.edu/~galles/visualization/Algorithms.html

2021-07-17 23:46:20 135

原创 插入排序:直接插入排序,折半插入排序,希尔排序;交换排序:冒泡排序,快速排序;

代码段:#include<stdio.h>#include<stdbool.h>#define ElemType int#define MaxSize 50ElemType A[MaxSize];void InsertSort1(ElemType A[], int n)//直接插入排序{ int j = 0, i = 0; for (i = 2; i <= n; i++)//依次将A[2]-A[n]插入前面已近排序的序列 { if (A[i] &l

2021-07-17 12:59:34 232

原创 二叉树层次遍历

代码段:nt LevelTree(BiTree T) //二叉树的层次遍历{ if (T == NULL)//树空返回0 return 0; else { BiTree Q[MaxSize];//定义一个足够储存树中所有元素的队列 int front = -1, rear = -1;//front为队头,rear为队尾 int last = 0, level = 0;//last指向当前层最右节点 rear++;//指针加一头节点入队 Q[rear] = T;//

2021-07-16 23:13:54 229 1

原创 二叉树先序建立,先序遍历,中序遍历,后序遍历,递归求二叉树深度,非递归求二叉树深度

代码如下:#include <stdio.h>#include <stdlib.h>#include <malloc.h>#define MaxSize 50//定义MaxSize最大值为50typedef int ElemType; //数据类型//定义二叉树结构体typedef struct BiTNode { ElemType data; //数据域 struct BiTNode* lChild, * rChlid; //左右子树域}B

2021-07-11 21:35:48 563 2

原创 汉诺塔递归实现

#include<stdio.h>int count = 0;//记录移动次数void move(int n, char a, char b, char c){ if (n == 1) { printf(" 第%d个盘子: %c->%c\n", n, a, c); //当n只有1个的时候直接从a柱移动到c柱 count++;//次数加1 } else { move(n - 1, a, c,.

2021-06-18 11:11:19 60

原创 斐波那契数列的实现;递归;非递归;

代码段:#include<stdio.h>int Fib1(int n)//递归实现斐波那契数列{ if (n == 0) return 0; else if (n == 1) return 1; else return Fib1(n - 1) + Fib1(n - 2); }int Fib2(int n)//非递归实现{ int num1 = 0; int num2 = 1; int tem = 0; if (n == 0) {

2021-06-17 23:10:14 122

原创 数据结的构链式队列,初始化,入队,出队,判断栈空;

***front指向首节点,无元素值,rear指向末尾元素值;

2021-06-17 21:38:45 211

原创 数据结构循环队列的基本操作,初始化队,入队,出队,读取队头元素,判断队空;

入队:队尾指针加1取模,Q.rear=(Q.rear+1)%MaxSize;出队:队头指针加1取模,Q.front=(Q.front+1)%MaxSize;

2021-06-17 18:11:40 5266 3

原创 数据结构栈的操作,初始化栈,进栈,出栈,读取栈顶元素;

代码段:#include<stdio.h>#include<stdlib.h>#include<stdbool.h>#include<string.h>#define MaxSize 50//定义栈最大长深度#define ElemType int//把int命名为ElemTypetypedef struct{ ElemType data[MaxSize];//存放栈元素 int top; //栈顶指针}SqSt

2021-06-17 16:33:15 1779 1

原创 数据结构中顺序表的建立,初始化,插入,按位置删除,按值删除,逆置;

#include<stdio.h>#include<stdlib.h>#include<stdbool.h>#include<string.h>#define MaxSize 100//定义顺序表最大长度#define ElemType int//把int命名为ElemTypetypedef struct{ ElemType data[MaxSize];//顺序表元素 int length; //顺序表当前长度}Sq.

2021-06-17 00:41:17 479

原创 单链表保留第一次出现的节点,删除其余绝对值相等的节点

链表中|[data]|<=n例如:2,15,-15,2,3,6,3只保留:2,15,3,6;整体思想:设置

2021-06-09 09:40:26 810

原创 单链表查找倒数第k个元素

要求:只使用一次循环算法思路:使用两个指针p,q;把指针p,q,都指向第一个元素,p先开始向右运动k个位置后q再开始运动,当pyu

2021-06-08 23:47:11 2841 8

原创 11.设C= {a1, b1,a2, b2,a3,b3,}为线性表.

11.设C={a,b1,a2,b.",",b,}为线性表,采用带头结点的hc单链表存放,设计一个就地算法,将其拆分为两个线性表,使得A={a,a.",an},B={."b2,b1}.

2021-06-08 00:18:11 667

原创 第二种单链表逆置操作,原地逆置,空间复杂度为O(1)

逆置操作:LinkList Reverse_2(LinkList& L){ LNode* pre, * p = L->next, * r = p->next; p->next = NULL; //处理第一个元素 while (r != NULL) //r为空,则说明p为最后一个节点 { pre = p; p = r; r = r

2021-06-07 18:59:45 414

原创 单链表元素就地逆置

方法:把头节点摘下,从第一个结点开始,依次采用头插法的方法建立链表,直到最后一个节点为止;元素逆置部分代码;LinkList Reverse(LinkList& L) //L为带头结点的链表,现实现就地逆置{ LNode* p, * r; //p为工作指针,r记录p的后继,防断链 p = L->next; //从第一个节点开始 L->next = NUL

2021-06-07 18:27:54 887

原创 单链表中递归调用删除所有值为x的元素

删除部分代码void Del_x(LinkList& L, int x) //递归调用删除所有值为x的元素{ LNode* p; if (L == NULL) return; if (L->data == x) { p = L; L = L->next; free(p); Del_x(L, x); } else Del_x(L->next, x);}总体代码...

2021-06-07 12:04:26 1764

原创 线性表2020统考题

[2020统考真题]定义三元组(a,b,c)(a、b、c均为正数)的距离D=a一b|+|b-c|+|c-al。给定3个非空整数集合S、S2和Ss,按升序分别存储在3个数组中。请设计一个尽可能高效的算法,计算并输出所有可能的三元组(a,b,c)(a∈S1,b∈S,c∈S)中的最小距离。例如S,={-1,0,9},S2=({-25,-10,1011),S;={2,9,17,30,41},则最小距离为2,相应的三元组为(9,10,9)。...

2021-06-07 11:02:51 865

原创 递增有序排列的线性表,最短时间查找元素x,若找到则将其与其后继元素交换位置;没有找到插入元素,使线性表依然呈升序排列

最短时间则采用折半查找#include <stdio.h>int n, A[]= { 1,2,3,4,5,16 };void Sei(int A[], int x) { int low = 0, high = n - 1, mid; //low和high分别指向线性表的上界和下界 while (low <= high) { mid = (low + high) / 2; //中间位置 i

2021-06-07 10:40:02 469 2

原创 C语言线性表元素循环向左移动p个位置;

思想:可视为将ab数组转化为ba数组,a代表前p个元素,b代表后p-1个元素,再分别把a,b逆置操作;例:n[]={1,2,3,4,5,6,7,8},先转化为n[]={8,7,6,5,4,3,2,1}

2021-06-07 09:29:47 327

原创 单链表的基本操作;头插法,尾插法建立链表,插入,删除,链表输出,求表长;这个更全,对特殊值处理更好;

#include<stdlib.h>#include<string.h>#include<stdio.h>typedef struct LNode{ int data; struct LNode* next;}LNode, * LinkList;LinkList List_H(LinkList& L) //头插法插入元素{ LNode* s; int x; L = (LinkList)malloc(size.

2021-06-07 00:19:20 220

原创 单链表元素的删除

先找到需要删除的元素,然后进行删除操作;找元素依然两种方法:按值查找和按位查找;这儿给出删除元素的代码;bool ListDelete(LNode* p) //删除元素{ if (p == NULL) return false; if (p->next == NULL) return false; LNode* q = p->next; p->next = q->next; free(q); return true;}...

2021-06-07 00:14:22 780

原创 单链表元素插入;

先贤先找到需要插入的位置,然后插入;找位置有两种方法:1.按位置查找;2.按值查找先给出插入的函数bool InsertNextNode(LNode* p, int e) //插入元素{ if (p == NULL) return false; LNode* s; s = (LNode*)malloc(sizeof(LNode)); if (s == NULL) return false; s->data = e; s->next = p->

2021-06-06 15:55:25 652

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除