笔记
星陨云
软件工程本科在读
展开
-
假设 顺序表 L中的元素按从小到大的次序排列,设计算法以删除表中重复的元素, 并要求时间尽可能少。(最多三个重复数)
#include <iostream>#include <cmath>#include<iomanip>using namespace std;//用线性表合并两个有序表enum myerrorcode { rangeerror, success, overflow, underflow };template<class T>class list{public: T data[1000]; int count; list() { .原创 2022-04-09 11:25:15 · 1338 阅读 · 0 评论 -
设计算法将递增有序线性表A/B的元素值合并为另一个递增有序的表C
#include <iostream>#include <cmath>#include<iomanip>using namespace std;//用线性表合并两个有序表enum myerrorcode{ rangeerror,success,overflow,underflow};template<class T>struct node{ T data; node* next;};template<class T>cl.原创 2022-04-04 13:26:58 · 534 阅读 · 0 评论 -
假设链表A、B分别表示两个集合,设计算法以求解C= A∪B, C= A∩B, A=A-B
#include <iostream>using namespace std;enum myerror_code { success, extent_error };template<class T>struct node{ T data; node* last, * next;};template<class T>class list{public: list() { head = new node<T>; head-.原创 2022-04-03 16:41:20 · 1601 阅读 · 0 评论 -
线性表中元素地址逆置
#include <iostream>#include <cmath>#include<iomanip>using namespace std;enum error_code1 { success, arrangeerror };template<class T>struct node{ T data; node* next; node* prior;};template<class T>class list{p.原创 2022-03-28 18:11:42 · 61 阅读 · 0 评论 -
用顺序队列、链队列实现杨辉三角的输出
顺序队列:#include<iostream>#include<cstdlib>#include<ctime>#include<string>using namespace std;enum myerror_code { success, underflow, overflow };//进5-2+3-1//+5-2+3-7template<class T>struct node{ T data; node* next原创 2022-03-26 15:58:09 · 1138 阅读 · 0 评论 -
c++练习题——杨辉三角
设计函数计算n(1<=n<=25)行的杨辉三角,存放在二维数组中,再输出。#include<iostream>#include<iomanip>using namespace std;int main(){ int n; cin >> n; n = n; int m = 2 * n - 1; int** arr = new int * [m]; for (int i = 0; i < m;原创 2021-12-26 10:39:06 · 251 阅读 · 0 评论 -
c++练习题——是素数吗
向程序输入一个正整数,请你判断该正整数是否是素数#include<iostream>using namespace std;int zhishu(int a){ int arr[100]; arr[0] = a; arr[2] = 0; arr[1] = 1; int j = 2; for (int i = 2; i <a ; i++) { if (a % i == 0&&a!=2) { arr[j] = i; j++;原创 2021-12-26 10:26:31 · 783 阅读 · 0 评论 -
c++练习题——求符合条件的数
求满足下列条件的最小自然数 x:(1)个位数是 8;(2)将个位数移至最高位,所得的新数是原数的 4 倍。#include<iostream>#include<cmath>using namespace std;/*求满足下列条件的最小自然数 x:(1)个位数是 8;(2)将个位数移至最高位,所得的新数是原数的 4 倍。*/int panduan(int x){ int count = 0; int a = x % 10; if (a == 8) { i原创 2021-12-26 10:14:18 · 927 阅读 · 0 评论 -
c++练习题——返回数值
返回整数从右边起某一指定位的数值(如int digitR(12345,2),返回4)#include<iostream>#include<cmath>using namespace std;int shuzhi(int a,int b){ // 返回整数从右边起某一指定位的数值(如int digitR(12345, 2), 返回4) int d = pow(10, b); int c = (a%d) / pow(10, b - 1); return c;}原创 2021-12-26 10:05:17 · 496 阅读 · 0 评论 -
两种冒泡排序的不同写法
冒泡排序的基本思想:相邻两数进行比较,大的向后移,经过第一轮两两比较和移动,最大的元素移动到了最后,第二轮次大的位于倒数第二个,依次进行。两种冒泡排序的不同:从左往右比还是从右往左比两种冒泡排序本质相同第一种(从左往右):for(int loop=0;loop<len-1;loop++){ for(int i=0;i<len-1-loop;i++) if(array[i]> array[i+1]){ int t = array[i]; arr原创 2021-12-19 15:51:54 · 199 阅读 · 0 评论 -
统计输入数字的位数(int型)
#include<iostream>using namespace std;int main(){ int num; int cnt=1; cin>>num; while(num/10!=0) { num=num/10; cnt++; } cout<<cnt<<endl; }原创 2021-12-09 19:25:39 · 182 阅读 · 0 评论 -
取double,float的小数点后几位
使用setprecision函数取#include <stdio.h>#include <iostream>#include <iomanip>//包涵set函数的头文件using namespace std;int main(){ const double pi=3.14; double a,b,c,d; cin>>a; cin>>b; cout<<setiosflags(io原创 2021-12-09 19:16:18 · 185 阅读 · 0 评论