- 博客(26)
- 资源 (1)
- 收藏
- 关注
原创 双系统Ubuntu18.04从装系统到软件环境配置
ubuntu18.04双系统安装+pycharm+clion+pytorch+cuda+cudnn
2021-10-21 14:59:21
573
原创 python动态规划和A*算法
#动态规划grid=[[0,1,0,0,0,0], [0,0,1,0,0,0], [0,0,1,0,0,0], [0,0,0,1,1,0], [0,0,1,1,1,0], [0,0,0,0,1,0]]init = [len(grid)-1, len(grid[0])-1]#up left down rightdir = [[0, -1], [-1, 0], [0, 1], [1, 0]]dir_p.
2021-09-24 10:22:20
263
原创 python搜索路径
记录路径搜索的步骤,以及最短路的图形化展示0为可通行1为障碍物主要有三段代码计算每一步的代价,以及扩展的点;记录所有扩展的点的顺序;图形化展示最短路
2021-09-23 10:58:18
318
原创 Python计算出生日期到今天过了多少天
def Day_of_month(year,month): if month==1 or month==3or month==5 or month==7 or month==8 or month==10 or month==10 or month==12: day_of_month=31 elif month!=2: day_of_month=30 elif (year%4==0 and year%100!=0)or(year%400==0): .
2021-09-03 11:36:12
2587
原创 C++实现矩阵类
#include<iostream>#include<vector>using namespace std;class Matrix{private: vector<vector<float>>m_grid; int m_rows; int m_cols;public: Matrix(); Matrix(vector<vector<float>>grid);public: void set_grid(vect.
2021-09-01 16:05:27
643
原创 Qt学习笔记(一)基本使用
Qt的路径不能有中文,为了保证发布方便,最好文件路径与安装目录在同一文件夹编译环境不需要全选,选择一个即可基类的选择:QMainWindow 多了菜单栏状态栏QWidget 一个干净的窗口Qdialog 一个对话框 ,右上角是问号和关闭创建的时候最好有ui界面,便于设计,可以直接拖组件即可创建好了先构建一下(小锤子)再进行编写项目文件,横线的位置可以加载库在Ui界面可以看到继承关系,QMainWindow继承了QWidget,QWid...
2021-08-31 18:29:09
375
原创 扫雷-基于图形库的C语言实现
扫雷的基本规则,以10*10为例,默认十个雷,点到一个格子,如果格子是数字,就只把数字翻出来,数字表示周围(3*3)8个格子有多少个雷,如果是空地,则翻出周围所有的空地,知道遇到数字停止,如果翻到雷,游戏结束。右键点击标志,会出现?再点会有????,再点一下变回原来的方块。?和????左击时无反应。加载地图void initMap();用于随机放雷以及给雷的周围加数字,这里用到了随机数,需要包含头文件<time.h>void initMap(){ int x = 0,y=0;/
2021-08-31 15:07:35
180
原创 Python通过卡尔曼滤波器实现预测
def update(mean1,var1,mean2,var2): mean=(mean1*var2+mean2*var1)/(var1+var2) var=1/(1/var1+1/var2) return(mean,var)def predict(mean1,var1,mean2,var2): mean=mean1+mean2 var=var1+var2 return(mean,var)measurements=[5.,6.,7.,9.,10.]m.
2021-08-26 14:56:29
1145
原创 二分查找以及栈结构链式
#include<iostream>using namespace std;template<class T>//二分查找int binary_research(T arr[],int len, T findVal){ int left = 0; int right = len - 1; int mid = left + (right - left) >> 1; while (left <= right) { if (arr[mid] ==.
2021-08-24 10:49:23
89
原创 C++模拟Vector
#ifndef __MYVECOTOR_H__#define __MYVECTOTR_H__#include<iostream>#include<assert.h>using namespace std;template<class T>class MyVector{ T* m_pBuff; int len; int max_len; struct MyIterator { T* pIt; //但返回类成员的引用时,最好是const引用.
2021-08-23 15:11:07
198
原创 Ubuntu18.04安装OMPL1.5.2(无科学上网)
本文适用于无法使用ubuntu科学上网导致OMPL安装失败的小伙伴下载install-ompl-ubuntu.sh,地址https://ompl.kavrakilab.org/install-ompl-ubuntu.sh,并修改执行权限。chmod u+x install-ompl-ubuntu.sh(1)官网下载ompl-1.5.2.tar.gzomplapp-1.5.2-Source.tar.gz这里我下载好了链接:https://rec.ustc.edu.cn/share
2021-08-20 11:03:59
729
1
原创 深度优先搜索C++实现
//深度优先//1.沿着固定方向搜索//2.走过的路不重复走//3.遇到死胡同的时候返回上一个十字口//4.在一个新的十字口选择同样的方向#include<iostream>#include<stack>//---------------------------------------------------------------------------------//准备工作// 1.准备一个地图,可以用二维数组表示,0为可通行路径,1为不可通行// 2..
2021-08-19 10:57:19
152
原创 Ubuntu 下ssh的使用
ubantu通过ssh远程连接 要连在同一wifi下更新升级所有软件 apt-get upgrade更新软件源apt-get update1. 安装ssh-client:sudo apt-get install openssh-client 安装ssh-server: sudo apt-get install openssh-server(这里有可能因为client的版本太高导致安装失败,根据提示安装低版本即可eg:sudo apt-get install openssh-clie...
2021-07-29 09:33:18
1366
原创 局域网下基于vnc的Linux远程通讯
目前找到的博客大多是到Windows远程控制Linux,这里采用Linux控制Linux,并且是在局域网的环境下通过vnc完成了远程的桌面控制以及文件互传。
2021-07-29 08:41:10
323
原创 c++实现快速排序以及希尔排序,插入排序(优化后的)
在这里插入代码片#include<iostream>#include<time.h>#define MAX_LEN 10using namespace std;//常用排序void printArr(int arr[], int len){ for (int i = 0; i < len; i++) { cout << arr[i] << " "; } cout << endl;}//插入排序void ins
2021-07-23 10:45:11
77
原创 推箱子C语言实现(基于图形库)
写在前面:.cpp文件中图形库()easy.x的贴图使用:定义变量IMAGE img; 加载地图loadimage(&img,L"地址名称",图片长,图片宽); 贴图putimage(贴在窗口x坐标,贴在窗口y坐标,&image);初始化Win32窗口,我们需要将所有的贴图贴在上面:initgraph(长,宽); closegraph(); // 关闭图形环境 clearcliprgn(); // 清除裁剪区的...
2021-05-22 11:29:49
324
原创 C语言实现冒泡排序,选择排序,插入排序与快速排序
#include<stdio.h>void bubble_sort(int* arr,int len){ int i=0,j=0,temp = 0; for (i = 0; i < len - 1; i++) { for (j = 0; j < len - 1 - i; j++) { if (arr[j] > arr[j + 1]) { temp = arr[j]; arr[j] = arr[j + 1]; arr[j +.
2021-05-19 11:09:13
272
原创 C++判断数组中是否存在重复元素
我们很容易想到的就是遍历所有数字,然后比较是否有相同的,但这样很容易超时,可以先排序,然后比较数组前后的数字,如果相同,则出现重复元素。在这里采用C++中的STL的set来完成,将数组中的数字赋值给set,set会自动剔除重复的元素,也会自动排序,最后比较一下数组长度以及set的长度即可完成判断#include<iostream>#include<set>using namespace std;void printSet(set<int>&s){
2021-05-10 10:13:44
4306
原创 旋转数组Leecode解题
问题描述如下给定一个数组,将数组中的元素向右移动k个位置,其中k是非负数。输入: nums = [1,2,3,4,5,6,7], k = 3输出: [5,6,7,1,2,3,4]解题思路之一,先将整个数组反转[7,6,5,4,3,2,1],再将前k个反转,后面的反转即可代码包含了主要的两个函数和一个打印函数,主要函数一个是完成一个数组的反转,另一个是完成三次反转的过程代码如下#include<iostream>using namespace std;void...
2021-05-09 17:16:36
69
原创 买股票的最佳时机---C++贪心算法完成
买卖股票的最佳时机 II题目描述如下:给定一个数组 prices ,其中prices[i] 是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。prices = [7,6,4,3,1]只需要计算股票的上升段即可,计算上升段的方法就是前后两天相差,将大于0的部分求和即可。代码如下#include<iostream>using nam.
2021-05-08 17:54:26
242
原创 Leecode入门算法---删除排序数组的重复项
原问题如下:删除排序数组中的重复项给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下:// nums 是以“引用”方式传递的。也就是说,不对实参做任何拷贝int
2021-05-07 20:26:52
51
原创 C语言——通过分文件编写执行数组的一系列功能
写在前面:完成数组的输入,输出,排序,删除元素,清空的功能;使用的VS2019版本首先建立好头文件myArray.h用于声明函数以及包含宏定义;建立函数的文件function.c,建立主要的main函数文件myArray,c,如图所示头文件中的代码如下:#pragma once//防止头文件重复#include<stdio.h>#define MAX 20//无参宏定义数组最大长度#define TYPE int//无参宏定义数组类型#define SCANF(a) s
2021-04-15 10:52:45
385
原创 简单的C语言代码实现快速排序
快速排序的基本原理是采用递归,我们主要关注第一次排序。排序中,我们需要给出待排的一组数的最左边和最右边的两个数:left、right用于指定排序的范围,通常left=0;right=len-1。此外还需要给出一个基数,这个数的选取比较随意,通常选为第一个数即可。选出这个基数(point)后,我们进行比较,将小于基数的数移到左边,大于的数移到右边,完成第一次排序。此后在左半部分和右半部分进行递归即可完成全部的排序。#include<stdio.h>void qusort(int a[],i
2021-04-15 00:12:43
5767
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人