- 博客(42)
- 收藏
- 关注
原创 三元组表形式表示稀疏矩阵,实现两个矩阵的加法、减法
#include <iostream>#include <stdio.h>#define maxsize 100using namespace std;typedef int ElemType;typedef struct{ int r, c; /*行号、列号*/ int d; /*非零元素值*/} TupNode;typedef struct{ int rows,cols,nums; /*行数、列数、非零元素.
2021-12-05 13:00:38
3843
1
原创 循环队列的顺序表示和实现
一、顺序队列的存储结构#define MAXSIZE 100//队列可能达到的最大长度typedef int QElemType;//队列的顺序存储结构typedef struct{ QElemType *base;//存储空间的基地址 int front;//头指针 int rear;//尾指针} SqQueue;二、循环队列的初始化算法步骤:(1)为队列分配一个最大容量为MAXSIZE的数组空间,base指向数组空间的首地址。(2)头指针和尾指针置
2021-11-11 16:43:45
470
原创 链栈基本操作的实现
一、链栈的存储结构typedef int SElemType;//链栈的存储结构,与单链表相同typedef struct StackNode{ SElemType date;//数据域 struct StackNode *next;//指针域} StackNode,*LinkStack;二、链栈的初始化链栈的初始化操作就是构造一个空栈,因为不用设头结点,所以直接将栈顶指针置空。//链栈的初始化int InitStack(LinkStack &S).
2021-11-11 16:09:23
7603
6
原创 队列的链队表示和实现
一、链队的存储结构//队列的链式存储结构typedef int QElemType;typedef struct QNode{ QElemType data; struct QNode *next;} QNode,*QueuePtr;typedef struct{ QueuePtr front;//队头指针 QueuePtr rear;//队尾指针} LinkQueue;二、链队的初始化算法步骤:(1)生成新的结点作为头结点,队头队.
2021-11-10 19:18:01
1023
原创 顺序栈的基本操作的实现
一、顺序栈的存储结构#define MAXSIZE 100typedef int SElemType;typedef struct{ SElemType *base;//栈底指针 SElemType *top;//栈顶指针 int stacksize;//栈可用的最大容量} SqStack;二、顺序栈的初始化算法步骤:(1)为顺序栈分配一个最大容量为MAXSIZE的数组空间,使base指向这段空间的基地址,即栈底。(2)栈顶指针top初始为bas.
2021-11-08 20:54:07
2398
原创 顺序表基本操作的实现
一、顺序表的初始化算法步骤:(1)为顺序表L动态分配一个预定大小的数组空间,使elem指向这段空间的基地址。(2)将表的当前长度设为0。typedef int ElemType;typedef struct{ ElemType *elem; int length;} SqList;//顺序表的初始化void InitList(SqList &L){ L.elem=new ElemType[MAXSIZE]; if(!L.elem)
2021-11-07 23:56:08
2318
2
原创 单链表基本操作的实现——前插法与后插法创建单链表
一、前插法创建单链表算法步骤:(1)创建一个只有头结点的空链表。(2)根据创建链表包括的元素n,循环n次以下操作: 生成新结点;——>输入元素值赋给新结点数据域;——>将新结点插入到头结点之后。//前插法创建单链表void CreateList_H(LinkList &L,int n){ //逆位序输入n个元素的值,建立带头结点的单链表L L=new LNode;//先建立一个带头结点的单链表 L->next...
2021-11-07 19:46:29
7013
原创 单链表基本操作的实现——初始化、取值、查找、插入、删除
#include <iostream>using namespace std;typedef int ElemType;typedef struct LNode{ ElemType date;//结点的数据域 struct LNode *next;//结点的指针域} LNode,*LinkList; //LNode现在等价于struct LNode,LinkList为指向结构体LNode的指针类型//单链表的初始化void InitList(LinkList .
2021-11-06 21:57:52
3729
原创 单链表基本操作的实现——输出
//输出void OutputList(LinkList &L){ LinkList p=L->next;//指向首元结点 while(p!=NULL)//当前结点不为空 { cout<<p->date<<endl;//输出当前结点数据 p=p->next;//P指向下一结点 }}...
2021-11-06 21:54:22
1295
原创 单链表基本操作的实现——求单链表的长度
//求单链表长度int ListLength(LinkList &L)//返回值类型为int{ LinkList p=L;//p指针指向头结点 int i=0;//用于计数,初值为0 while(p->next!=NULL)//只要结点指针域不为空 { i++; p=p->next;//p指向下一结点 } return i;}...
2021-11-06 21:49:57
2932
2
原创 单链表基本操作的实现——删除
//删除void deleteElem(LinkList &L, ElemType e){ LinkList p = L; LinkList q = NULL; while(p->next != NULL) { if(p->next->e == e) { q = p->next;//临时保存被删除结点的地址以备释放 p->next = p->ne.
2021-11-06 21:41:45
11026
原创 单链表基本操作的实现——查找
1、查找数据是否存在//查找数据是否存在bool hasList(LinkList &L,ElemType e){ LinkList p=L->next;//让p指向首元结点 while(p->next!=NULL)//p指向的结点指针域不为空 { if(p->date==e)//p结点的数据域与需要查询的数据进行比对 { return true;//如果相等,返回true .
2021-11-06 20:30:04
1071
原创 单链表基本操作的实现——取值
在带头结点的单链表L中根据序号i获取元素的值,用e返回L中第i个数据元素的值。//取值int GetElem(LinkList L,int i,ElemType &e){//在带头结点的单链表L中根据序号i获取元素的值,用e返回L中第i个数据元素的值 LinkList p=L->next;//初始化,p指向首元结点 int j=1;//计数器初值赋为1 while(p&&j<i)//顺链域扫描,直到p为空或p指向第i元素 {.
2021-11-06 19:37:41
2208
原创 单链表基本操作的实现——插入
将值为e的新结点插入到链表中,这里插到头结点和首元结点之间。算法步骤:1、生成一个新结点*s。2、将结点的数据域置为e。3、将新结点的指针域指向插入结点的后一结点,这里是首元结点4、将头结点指针域修改为指向插入的结点*s//单链表的插入void ListInsert(LinkList &L,ElemType e){ LinkList s=new LNode;//生成一个新结点*s s->date=e;//将结点的数据域置为e s-&.
2021-11-06 18:56:34
12962
1
原创 单链表基本操作的实现——初始化
单链表的初始化操作就是构建一个空表步骤:1、生成新的结点作为头结点,用头指针指向头结点。2、头结点的指针域置空。#include <iostream>using namespace std;typedef int ElemType;typedef struct LNode{ ElemType date;//结点的数据域 struct LNode *next;//结点的指针域}LNode,*LinkList;//LNode现在等价于struct ..
2021-11-06 18:49:53
3732
原创 C语言中的参数传递
参数传递有两种方式:1,值传递(参数为整型、字符型等)2,传地址(1)参数为指针变量(2)参数为引用类型(3)参数为数组名一、传值方式函数调用时为形参分配单元,并将实参的值复制到形参中;调用结束,形参单元释放,实参单元仍保留并维持原值。#include <stdio.h>#include <stdlib.h>swap(int a,int b){ int temp; temp=a; a=b; b=temp;}i
2021-09-20 21:07:57
3076
原创 Java实现简单图片浏览
想法:弄一个登录界面,登录进去后可以选择查看图片实现步骤:1、创建主函数package 图片展示;public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Login login = new Login(); }}2、login类package 图片展示;import java.awt.Color;import ja
2021-07-10 17:48:17
4006
2
原创 Color类 设置字体颜色、背景颜色
Label label=new Label("陈同学"); label.setBounds(100, 100, 100, 150); Color color = new Color(118,120,78);//(0,0,0)也OK label.setForeground(color); label.setBackground(Color.green); label.setFont(new Font("宋体",Font.BOLD,30)); this.add(la...
2021-06-03 20:29:54
1754
原创 Font 设置字体大小
用法:例子一:JTextArea Myarea = new JTextArea(); Myarea.setText("静夜思\n" +"床前明月光,\n" +"疑是地上霜。\n" +"举头望明月,\n" +"低头思故乡。\n" ); Myarea.setBounds(50, 50, 250, 250); Font font = new Font("宋体",Font.BOLD,4...
2021-06-03 20:04:36
4740
原创 算法——鸡兔同笼(瞎玩)
package 鸡兔同笼;import java.util.Scanner;public class JandT { public int chook(int head,int foot) { int chook = (4*head-foot)/2; return chook; } public static void main(String[] args) { // TODO Auto-generated method stub JandT JT = new Jan.
2021-05-31 20:57:47
168
原创 算法——递归(汉诺塔)
问题描述:简单分析:一个盘子:只需form A to C;两个盘子:1、盘子1form A to B ;2、盘子2 form A to C;3、盘子2 form B to C;代码:package 递归;import java.util.Scanner;public class Hanoi { public void exchange(int n, char a, char b, char c){ if(n == 1){ System.out.println..
2021-05-31 20:07:55
71
原创 算法——递归(阶乘)
package 递归;import java.util.Scanner;public class Foctorial { public int foctorial(int n) { if(n==1) { return 1; } else return n*foctorial(n-1); } public static void main(String[] args) { // TODO Auto-generated method stub Foctoria.
2021-05-31 19:07:34
98
原创 算法——枚举(完美立方)
package 枚举;import java.util.Scanner;public class PerfectCubic { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("请输入一个数:"); Scanner sc = new Scanner(System.in); int n = sc.nextInt(); for...
2021-05-30 10:17:14
106
原创 Java 窗口设置图标及背景图片
方法一: ImageIcon backbround = new ImageIcon("./photo/background.jpg"); //将图片添加到JLable标签 JLabel jlabel = new JLabel(backbround); //设置标签的大小 jlabel.setBounds(0,0, getWidth(),getHeight() ); //将图片添加到窗口 add(jlabel);...
2021-05-28 20:49:07
11729
9
原创 Java自定义异常
要求:从键盘输入两个数,求和,自定义两个异常,一个为,当输入的数中只有一个数字时OnlyOneException,当两个数都不是数字时NoOperandException;难点一,判断输入的内容是否是数字public static boolean isNumber (String str){ for (int i = 0; i < str.length(); i++) { if (!Character.isDigit(str.charAt(i)))
2021-05-25 20:36:35
528
原创 try catch finally
package part1;public class HelloException1 { public static void main(String args[]) { int i = 0; String greetings[] = { "数组1", "数组2"}; while (i < 3) { // 当发生异常的方法和处理异常的方法是同一个方法的时候:异常的捕获:如果在一个方法中,自己能处理异常 try { System.out.println(gre.
2021-05-23 19:03:50
79
原创 Java 界面编程之为按键设置图片
为按键设置图片 JButton jb1 = new JButton("按钮"); ImageIcon imageIcon1 = new ImageIcon("./tupian/csy1.jpg"); Image image1 = imageIcon1.getImage(); Image smallImage1 = image1.getScaledInstance(50, 30, Image.SCALE_FAST); ImageIcon smallIcon1 =.
2021-05-22 11:10:40
1937
1
原创 Java 界面编程之图片展示
首先先把图片弄进去,先选定包,new一个folder然后把需要的图片直接拖拉进去,就是下面这样点进去会有一个图片地址,粘贴到 ./tupian/tupian1.jpg 就行,但放进代码里需要前边加个点,我也不知道为啥这就是显示图片的代码,不一定要用 JLabel ,JButton也可以,使用方法一样 ImageIcon image1=new ImageIcon("./tupian/tupian1.jpg"); JLabel label = new JLabel(ima...
2021-05-22 10:20:57
1606
原创 Java 界面编程之界面跳转
在事件处理中创建对象public void actionPerformed(ActionEvent e) { QQ1 qq1=new QQ1();//为跳转的界面 }步骤:在主函数中创建一个主窗口的对象package 界面编程7;public class QQmain { public static void main(String[] args) { // TODO Auto-generated method stub QQ qq = new...
2021-05-21 22:48:10
7049
原创 Java 弹框JOptionPane的showMessageDialog方法
第一种JOptionPane.showMessageDialog(null, "提示内容");第二种JOptionPane.showMessageDialog(null, "提示内容" ,"标题", -1);JOptionPane.showMessageDialog(null, "提示内容" ,"标题", 0);JOptionPane.showMessageDialog(null, "提示内容" ,"标题", 1);JOptionPane.show...
2021-05-21 21:46:09
5342
原创 鼠标事件处理
自定义按钮添加事件监听器对象.addActionListener(this); 对象.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.out.println("单击了按键1"); } });例子:package 界面编程7;import java.awt.FlowLayout;import java
2021-05-21 20:22:31
204
原创 Java程序设计基本技能
我把知识整理了一遍,其中有自己总结的,也有书本上的,还有网络上的,希望对大家有所帮助。一、Java开发介绍1、Java是一种面向对象的程序设计语言,Java平台由Java虚拟机JVM 和Java应用程序编程接口API 构成。Java语言在编译时会把源代码编译成字节码,就是.class文件。Java虚拟机可以通过ClassLoader来加载字节码,并最终将其转换成机器可以识别的指令进行执行。2、JDK、JRE、JVM之间的关系JDK(Java Development Kit) ...
2021-05-16 21:22:02
187
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人