数据结构与算法
yhstarry
这个作者很懒,什么都没留下…
展开
-
回溯法输出自然数1~n的全排列。
题目描述:回溯法输出自然数1~n的全排列。输入:n输出:1~n的全排列。#include <bits/stdc++.h>using namespace std;int vis[100];int ans[100];int n;void dfs(int x){ //现在处理的是第x个数 if(x>n){ //找到终点 for(int i=1;i<=n;i++){ //输出 cout<<ans[i]<<" "; }原创 2021-01-05 10:20:11 · 2447 阅读 · 1 评论 -
动态规划的总结
本文链接:https://blog.csdn.net/zw6161080123/article/details/80639932已知问题规模为n的前提A,求解一个未知解B。(我们用An表示“问题规模为n的已知条件”)此时,如果把问题规模降到0,即已知A0,可以得到A0->B.如果从A0添加一个元素,得到A1的变化过程。即A0->A1; 进而有A1->A2; A2->A3; …… ; Ai->Ai+1. 这就是严格的归纳推理,也就是我们经常使用的数学归纳法;对于Ai+1,转载 2020-05-16 19:10:47 · 869 阅读 · 0 评论 -
单链表的设计与实现
1、单链表的设计(linklist.h):设计头文件linklist.h,其内容如下:①类型设计②基本操作的设计(包括初始化、单链表的创建、插入、删除、遍历等)2、设计文件c.h,提供比较和遍历时的操作函数3、测试:设计测试文件application.cpp文件,验证所设计的顺序表的正确性。其内容如下:设计一个主函数。4、利用上面设计的单链表,实现下列应用①设计函数,删除链表中元素在[x, y]之间的所有元素,要求算法的时间复杂度为O(n),空间复杂度为O(1);②设计函数,求解单链表中倒数原创 2020-05-12 17:24:36 · 1353 阅读 · 0 评论 -
有序顺序表的设计与实现
1、有序顺序表的设计(osqlist.h):设计头文件osqlist.h,其内容如下:①类型设计②基本操作的设计(包括初始化、插入、删除、索引、遍历等)2、设计文件c.h,提供比较和遍历时的操作函数及有序表的有序规则(递增还是递减)3、测试:设计测试文件application.cpp文件,验证所设计的有序顺序表的正确性。其内容如下:设计一个主函数。1、osqlist.h文件#include "c.h"#include <stdlib.h>#define LISTSIZE 20原创 2020-05-12 11:13:34 · 5025 阅读 · 0 评论 -
设计顺序表并删除元素在【x,y】之间的元素,将所有奇数移到所有偶数的前面,求LA=LA∪LB
1、顺序表的设计(sqlist.h):设计头文件sqlist.h,其内容如下:①类型设计②基本操作的设计(包括初始化、插入、删除、索引、遍历等)2、设计文件c.h,提供比较和遍历时的操作函数。3、测试:设计测试文件application.cpp文件,验证所设计的顺序表的正确性。其内容如下:设计一个主函数。4、利用上面设计的顺序表,实现下列应用①删除元素在[x, y]之间的所有元素,要...原创 2020-05-01 14:26:36 · 1242 阅读 · 0 评论 -
冒泡排序
一、什么是冒泡排序?冒泡排序的英文Bubble Sort,是一种最基础的交换排序。大家一定都喝过汽水,汽水中常常有许多小小的气泡,哗啦哗啦飘到上面来。这是因为组成小气泡的二氧化碳比水要轻,所以小气泡可以一点一点向上浮动。而我们的冒泡排序之所以叫做冒泡排序,正是因为这种排序算法的每一个元素都可以像小气泡一样,根据自身大小,一点一点向着数组的一侧移动。具体如何来移动,举个例子有8个数组成一个...原创 2019-12-25 20:03:26 · 23474 阅读 · 2 评论 -
第一次见面
欢迎各位指导,谢谢您的光临!原创 2019-08-25 15:49:42 · 96 阅读 · 0 评论