- 博客(10)
- 收藏
- 关注
原创 C++:重载输入输出流(C++实现)
设计学生信息类,其结构如下:class stuinfo{ char stuno[20]; //学号 char name[20]; //姓名 int sum; //总成绩public: stuinfo(char *st, char *na, int score); friend ostream & operator<<(ostrea...
2022-05-22 11:11:26
1546
原创 C++:矩阵运算和重载运算符(C++实现)
设计方阵类Square,其结构如下:class Square{private: int n; //方阵的行列数 int *data;//用于存放方阵n*n个数据的数据区public: Sq...
2022-05-07 15:30:31
2606
原创 数据结构:关于确定数组中重复元素的问题(C语言实现)
设计一个函数nosame:int nosame(int *a, int m, int n)a是一个指向二维数组首元素的指针,所指向的数组m+1行,n+1列,其中第0行和第0列的数据无效,也就是只需要判断1-m行和1-n列的数据就可以,如果这个数组的所有整数各不相同,则返回0,否则返回-1main函数int main(){ int a[5][6]={ {0}, {0,1,2,3,4,5}, {0,11,12,13,14,15}, {...
2022-04-24 21:35:24
3152
原创 数据结构:用递归函数求链表各节点和的平均值(C语言实现)
设计一个函数double getaverage(List f, int *nodenum)已知f为一个不带头结点单向链表的头指针,链表结点数据结构如下所示,使用递归函数,求出所有结点中数值的平均数。nodenum为结点数的输出参数,返回平均数,如果为空链表,则返回0。List的结构如下:typedef struct T_Node{ int d; struct T_Node *next;} Node, *List;createlink函数如下:void createlink(Lis...
2022-04-23 14:49:48
3750
原创 数据结构:关于逆转链表的问题(C语言实现)
设计一个函数void LinkReverse(List *pla)其功能将带头结点的单向链表反转。la是一个带头结点的链表,函数的目的是逆转这个链表,也就是第一个结点变成最后一个结点,第二个结点变为倒数第二个结点,以此类推。该函数的空间复杂度为O(1),也就是该函数不能定义数组变量和使用动态分配函数。其中List是如下结构体:typedef struct T_Node{ int d; struct T_Node *next;} Node, *List;如下的main函数执行后/...
2022-04-15 19:39:32
1824
原创 C++:上机练习(C++实现)
现有nx个x,ny个y,nz个z,nw个w,将这若干个非负整数分别置于A数组中或B数组中。规则是:所有x必须放入A数组,所有y必须放入B数组,z和w可以放入A数组也可以放入B数组。SA为A数组的和,SB为B数组的和,S为SA和SB的较大者。当x,y,z,w和nx,ny,nz,nw确定后,如何放置,可以使得S最小,并求出这个S值。其中 0<=x,y,z,w<=10000000,nx,ny,nz,nw<=10000000。如:x,y,z,w,nx,ny,nz,nw分别为:10 1 10 1
2022-04-15 11:12:26
1135
原创 C++:关于大数相乘的解决方法(C++实现)
在标准C++中,int类型可表示数的范围是-2^31~2^31-1。而在实际运算中,可能用到的数可能会远远超出int或long类型的范围。而此时如果继续用int或long的话必然会出现错误。此时就需要我们用到“大数”这个概念。通过string和vector为载体来进行运算,因为字符串或容器没有长度的限制。具体代码如下:using namespace std;#include<iostream>#include<string>#include<vector>
2022-04-11 22:57:00
3351
原创 数据结构:链队列的基本操作(C语言实现)
链队列是用链表作为存储结构的队列。队列的特点是先入先出,后入后出。这里采用带头结点的链表结构,并设置一个头指针front和一个尾指针rear始终指向头节点和队尾结点。#include<stdio.h>#include<stdlib.h>typedef struct Node /*定义队列结点结构*/{ int data; /*数据域*/ struct Node *next; /*指针域*/}LinkQueueNode;typede
2022-04-06 22:29:59
4741
原创 数据结构:链栈的一些基本操作(C语言实现)
链栈是采用链表作为存储结构的栈。链栈也遵循先进后出的特性,在出栈后要释放相应的空间。其相较于顺序栈的优点是:只要系统有可用空间,就不会出现溢出的情况。链栈的一些基础操作代码如下:#include<stdio.h>#include<stdlib.h>typedef struct LinkStackNode /*定义链栈的结构*/{ int data; LinkStackNode *next;}LinkS
2022-04-05 16:09:39
4970
原创 数据结构:顺序栈的定义和操作(C语言实现)
#include<stdio.h>#include<stdlib.h>#define Stack_Size 100typedef struct Stack{ int elem[Stack_Size]; int top;}Stack;void InitStack(Stack *S) /*构造一个空栈*/{ S->top=-1;}void Push(Stack *S,int x) /*顺序栈进栈操作*/{...
2022-03-23 21:50:14
2186
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人