自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++普通函数指针,类成员指针(静态成员函数指针,非静态成员函数指针,静态数据成员指针,非静态数据成员指针)总结

#include using namespace std;class A {public:A(int z,double x):z(z),x(x){}int fun1(float) {return 0;}static double fun2(int, string) {return 0;}static int y;int z;private:double x;};float fun3(double) {return 0;}int A::y = 0;int main()

2022-06-24 08:49:32 289

原创 C++模板类的公有派生类成员函数内部使用基类公有成员函数的方法

在基类公有成员函数之前加入模板基类域名```cpp#include<iostream>using namespace std;template<class T>class a {public: void funA();};template<class T>void a<T>::funA() { cout << "A ";}template<class T>class b :public a<T

2022-06-24 08:48:52 227

原创 C++打开一个指定文本文件,每一行前加行号输出到另一文本文件。

#include<fstream>#include<sstream>#include<iostream>using namespace std;int main() { int counter = 0; string str; ifstream ifs("ww.txt"); ofstream ofs("aa.txt"); while (!ifs.eof()) { getline(ifs, str);

2022-06-24 08:48:42 3241

原创 《数据结构(C++语言版)》邓俊辉第3版 教材全部代码(取最优方案)及部分重要课后习题代码 第1章 绪论

//第1章 绪论//交换元素void swap(int& a, int& b) { int temp = a; a = b; b = temp;}//整数数组的起泡排序void bubblesort1a(int A[], int n) { bool sorted = false; int i = 0; while (!sorted) { sorted = true; for (i = 1; i &lt

2022-06-24 08:48:31 603

原创 邓俊辉《数据结构(C++版)》:栈Stack继承向量Vector使用size()函数出现C2780 C2672错误解决办法

#include"D:\Codes\数据结构代码目录\第2章 向量\第2章 向量.cpp"#include <iostream>template<typename T>class Stack :public Vector<T> {public: void push(T const& e) { insert(size(), e); } T pop() { return remove(size() - 1); } T& top()

2022-06-24 08:48:14 468

原创 邓俊辉《数据结构C++》第二章课后习题中位图Bitmap的三个接口实现代码解释

void set(int i); //将第i位置为true(将整数i加入当前集合)void clear(int i); //将第i位置为false(从当前集合中删除整数i)bool test(int i); //测试第i位是否为true(判断整数i是否属于当前集合)教材给的实现代码如下:void set(int k) { expand(k); M[k >> 3] |= (0x80 >> (k & 0x07)); }void clear(int k) { expan

2022-06-24 08:48:06 727

原创 (C/C++)查找整数数组中未出现的最小正整数

时间复杂度O(n),空间复杂度O(1)//从a[n]中查找元素x,成功返回truebool find_x1(int *a,int n,int x) { for (int i = 0; i < n; i++) if (a[i] == x) return true; return false;}//查找未出现的正整数的最小值bool find_min3(int* a, int n) { int min = a[0]; for

2022-06-24 08:47:43 1781

原创 按小大顺序逐个显示循环单链表的节点并删除对应结点

//查找循环单链表最小值之前的位置Node* find_min(List L) { Node* q = L;//q保存最小值前驱指针 Node* p = q->next;//p为操作指针 Node* r = q;//P的前驱 while (p!=L){ if (p->data < q->next->data) { q=r; } p = p->next;

2022-06-24 08:47:34 450

原创 typedef struct和struct在C/C++中的区别联系

第一条和第二条在C/C++是相同的,只有第三条C和C++有区别

2022-06-23 22:56:38 1031

原创 C/C++使用VS创建线性表的链式表示以及头插法

王道的书把我搞晕了,我自己整好了#define _CRT_SECURE_NO_WARNINGS//防止scanf报错#include <iostream>struct Node{ int data; Node* next;};typedef Node* List;//头插法建表List HeadInsert(List& L) { Node* s; int x; L = (Node*)malloc(sizeof(Node)); L-&

2022-06-23 22:56:28 255

原创 删除不带头结点的单链表L中所有值为x的结点

时间复杂度O(n),空间复杂度O(1)//删除*p节点,将后继结点赋值p,删除后置结点,等效于删除pbool del_p(Node* p) { Node* q = p->next; p->data = q->data; p->next = q->next; free(q); return true;}//无头列表删除xint del_x2(List& L, int x) { if (!L) { printf("空

2022-06-23 22:56:09 785

原创 带头结点删除单链表L中所有x

//带头结点删除L中所有xvoid del_x5(List& L, int x) { Node* p = L->next; Node* pr = L;//设置p的前置节点 Node* q = L; while (p->next) { //p指到最后一个元素便退出循环 if (p->data == x) { q = p;//标记待删除节点 pr->next = p->next

2022-06-23 22:56:01 303

原创 倒序打印单链表

//倒序打印单链表void rprint(List L){ Node* p = L->next; List L1 = (Node*)malloc(sizeof(Node));// Node* s = (Node*)malloc(sizeof(Node)); s->data = p->data; L1->next = s; Node* q = s;//q始终指向L1的第一个结点(非头结点),L1永远指向头结点 s->nex

2022-06-23 22:55:53 51

原创 递归实现倒序打印链表

//递归实现倒序打印链表void r_print(List L) { if (L->next != NULL) { r_print(L->next); } if (L != NULL)printf("%d ",L->data);}

2022-06-23 22:55:41 356

原创 删除最小值结点

//删除最小值结点void del_min(List& L, int& e) { e = L->next->data; Node* p = L->next;//设置前后指针q,p Node* q = L; Node* k = L->next;//待删除结点指针k while (p) { if (p->data < e) { e = p->data;

2022-06-23 22:55:31 78

原创 有序单链表去重函数(两种方法,第二个是王道书上的)

//去重函数void unique(List &L) { int k=0; Node* p = L->next,*q=p->next,*r=L,*s=L;//p指向最大不同元素,q为操作指针 while (q) { if (q->data != p->data) { s = p->next; p->next=q;//将p指向q,释放p之后相同元素空间,并将p后移

2022-06-23 22:55:22 735

原创 关于onenote右键图片快速裁剪

onenote有两个图片裁剪,onetastic和onenotegem都有这个功能,但右键图片显示不同:onetastic是裁剪,onenotegem是剪裁onetastic的裁剪完爆onenotegem的剪裁。后者很垃圾。而且前者免费,后者付费。所以如果想要快速轻松裁剪图片,就安装onetastic吧下载链接:http://xz.w10a.com/Small/onetastic.zip解压后,点解exe,安装后重启。.........

2022-06-09 10:03:55 1079 1

空空如也

空空如也

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

TA关注的人

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