- 博客(20)
- 资源 (1)
- 收藏
- 关注
原创 Daily coding:寻找重复数
给定一个包含n + 1 个整数的数组nums,其数字都在 1 到 n之间(包括 1 和 n),可知至少存在一个重复的整数。假设只有一个重复的整数,找出这个重复的数。示例 1:输入: [1,3,4,2,2]输出: 2示例 2:输入: [3,1,3,4,2]输出: 3说明:不能更改原数组(假设数组是只读的)。只能使用额外的 O(1) 的空间。时间复杂度小于 O(n2) 。数组中只有一个重复的数字,但它可能不止重复出现一次。代码1(C++):class Sol...
2020-05-26 16:24:18
289
原创 Daily coding:寻找两个正序数组的中位数
给定两个大小为 m 和 n 的正序(从小到大)数组nums1 和nums2。请你找出这两个正序数组的中位数,并且要求算法的时间复杂度为O(log(m + n))。你可以假设nums1和nums2不会同时为空。示例 1:nums1 = [1, 3]nums2 = [2]则中位数是 2.0示例 2:nums1 = [1, 2]nums2 = [3, 4]则中位数是 (2 + 3)/2 = 2.5代码1:class Solution: de...
2020-05-24 13:31:03
223
原创 Daily coding:最小覆盖子串
给你一个字符串 S、一个字符串 T,请在字符串 S 里面找出:包含 T 所有字符的最小子串。示例:输入: S = "ADOBECODEBANC", T = "ABC"输出: "BANC"说明:如果 S 中不存这样的子串,则返回空字符串""。 如果 S 中存在这样的子串,我们保证它是唯一的答案。代码:lass Solution: def minWindow(self, s: 'str', t: 'str') -> 'str': from colle.
2020-05-23 20:45:12
326
原创 ROS笔记十(基于Python、Kinetic):rviz基础——快速配置并渲染点云和摄像机图像数据
前言:rviz(ROS visualization):用于机器人、传感器和算法的通用3D可视化系统。rviz能够绘制多种类型的数据流。特别是三维的数据。在ROS中所有类型的数据都被关联到一个参考坐标系上。1.准备工作:本文以上一个笔记遥控操作turtlebot为例子,准备工作:打开四个终端:一个运行roscore:roscore一个运行键盘驱动:rosrun teleopbot key_publisher.py 一个运行keys_to_teleop_with_rate.py.
2020-05-20 16:07:03
2485
原创 ROS笔记九(基于Python、Kinetic):gazebo中通过键盘输入控制turtlebot机器人移动和转向
前言:Twist消息能描述所有的3D运动,在控制差分驱动的平面运动机器人时,只需要使用其中的两个参数:线性速度(前进/后退)和绕竖直轴的角速度。所以只需要简单地发送线速度(米每秒)和角速度(弧度每秒)命令。这里需要两个程序:一个程序用来监听键盘地敲击事件然后通过ROS消息发布出去,另一个订阅这个ROS消息并输出一个Twist消息,从而实现键盘输入控制机器人地自由移动。1.键盘驱动:使用Python的termios和tty库将终端设置成原始模式并捕获键盘敲击事件,然后将事件以std_msgs/st
2020-05-19 23:52:53
3972
原创 ROS笔记八(基于Python、Kinetic):gazebo初探——实现turtlebot移动并避开障碍
前言:代码实现在gazebo7仿真环境中turtlebot机器人的随机移动并避开障碍物。1.创建新的工作空间:创建工作空间文件树:$ mkdir -p ~/wanderbot_ws/src$ cd ~/wanderbot_ws/src$ catkin_init_workspace创建一个“wanderbot”程序包:$ cd ~/wanderbot_ws/src$ catkin_create-pkg wanderbot rospy geometry_msgs sensor_ms
2020-05-18 17:06:10
2394
原创 ROS笔记七(基于Python、Kinetic):通信机制——动作(action)
前言:动作使用话题实现,其本质上相当于一个规定了一系列话题(目标、结果、反馈等)的组合使用方法的高层协议。相较于服务的同步通信机制,动作机制则是异步的。动作适用于大部分请求/响应式交互场景,尤其是执行过程不能立即完成。catkin_ws工作空间下my_code程序包里的文件目录结构:1.定义一个动作服务器:...
2020-05-15 21:13:40
1401
原创 ROS笔记六(基于Python、Kinetic):自定义动作类型
前言:动作使用话题实现,其本质上相当于一个规定了一系列话题(目标、结果、反馈等)的组合使用方法的高层协议。相较于服务的同步通信机制,动作机制则是异步的。动作适用于大部分请求/响应式交互场景,尤其是执行过程不能立即完成。1.创建动作类型的源文件:在my_code包下创建action目录,用于存放动作源文件。下面定义一个满足定时器需求的动作Timer.action:...
2020-05-15 19:09:18
590
1
原创 ROS笔记五(基于Python、Kinetic):通信机制——服务(server)
前言:服务是另一种在节点之间传递数据的方式。服务其实就是同步的跨进程函数调用,让一个节点调用运行在另一个节点中的函数。服务适用于偶尔并且在有限时间里完成的通信情况。1.定义一个服务端:q...
2020-05-14 21:53:29
725
原创 ROS笔记四(基于Python、Kinetic):自定义服务类型
前言:同消息定义一样,服务定义只是一个消息类型列表。不同的是服务调用同时具有输入和输出。点击查看自定义消息类型1.创建服务类型的源文件:在my_code报下创建srv目录,用于存放服务源文件。下面定义一个WordCount服务,文件名WordCount.srv:string words---uint32 count"---"表示输入和输出的分割,string作为服务调用的输入,uint32作为服务调用的输出。2.告知构建系统有新服务的定义:向package.xml文件中
2020-05-14 18:14:05
652
原创 ROS笔记三(基于Python、Kinetic):自定义消息类型
前言:一个消息定义文件包含一系列的构成此消息的类型。这些类型可以是ROS内建消息类型比如std_msgs包中定义的或是自己定义的消息类型。定义消息后,需要catkin_make编译。1.创建消息类型的定义文件:在my_code报下创建msg目录,用于存放消息源文件。下面定义一个Complex消息,文件名Complex.msg:float32 realfloat32 imaginary2.告知构建系统有新消息的定义:向package.xml文件中添加以下代码即可:...
2020-05-14 17:36:48
879
原创 ROS笔记二(基于Python、Kinetic):通信机制——话题(topic)
前言:话题实现了一种发布/订阅的通信机制,这是一种在分布式系统中常见的数据交换方式。节点在发送数据到话题上之前,必须先声明话题名和发送到该话题的消息所具有的类型。1.声明一个话题...
2020-05-13 21:09:49
636
原创 ROS笔记一(基于Python、Kinetic):创建工作空间及ROS程序包
前言:在编写ROS代码之前,首先为这些代码建立工作空间。创建之前先确认是否将ROS全局设置的脚本加入.bashrc文件中。如果没有,可以手动添加:source /opt/ros/kinetic/setup.bash1.创建catkin工作空间并初始化:mkdir -p ~/catkin_ws/srccatkin_ws为工作区路径,可任意命名cd ~/catkin_ws/srccatkin_init_workspacecatkin_init_workspace命..
2020-05-13 15:59:34
610
原创 百度搜索资源提交链接
使用说明1. 链接提交工具是网站主动向百度搜索推送数据的工具,本工具可缩短爬虫发现网站链接时间,网站时效性内容建议使用链接提交工具,实时向搜索推送数据。本工具可加快爬虫抓取速度,无法解决网站内容是否收录问题 2. 百度搜索资源平台为站长提供链接提交通道,您可以提交想被百度收录的链接,百度搜索引擎会按照标准处理,但不保证一定能够收录您提交的链接地址:https://ziyuan.baidu.com/linksubmit/url...
2020-05-12 19:31:06
834
原创 启动roscore报错:ImportError:No module named 'defusedxml'解决方案。
问题描述:解决方案:1.查看系统python解释器指向:ls -al /usr/bin/python下面是笔者的情况:指向python3.52.修改软链接指向python2.7sudo rm -rf /usr/bin/pythonsudo ln -s /usr/bin/python2.7 /usr/bin/python...
2020-05-12 19:19:04
1637
原创 ROS包创建问题:The 'catkin-pkg==0.4.18' distribution was not found and is required by the application解决方法。
问题描述:解决方案:pip install catkin-pkg==0.4.18安装完成后便可创建ROS程序包。
2020-05-12 17:15:13
1966
原创 catkin_make后输出:ImportError: No module named 'catkin_pkg'解决方案.
问题描述:解决方案:1.打开catkin_make文件:sudo gedit /opt/ros/kinetic/bin/catkin_make2.将脚本解释器改为“#!/usr/bin/python2”即可
2020-05-12 16:13:19
2620
原创 ROS全局设置脚本加入.bashrc中:source /opt/ros/kinetic/setup.bash
摘要:在ros中创建一个catkin工作区之前需要将ros全局设置的脚本加入.bashrc文件中。1.基于Ubuntu14.04下的ros的indigo版本:source /opt/ros/indigo/setup.bash2.基于Ubuntu16.04下的ros的kinetic版本:source /opt/ros/kinetic/setup.bash加入后在终端输入gedit .bashrc即可查看:...
2020-05-12 15:02:58
3532
原创 Python学习turtle库绘制系统时间并用Pyinstaller打包为可执行文件。
概述:turtle库绘制当前系统时间,并且用Pyinstaller打包为可执行文件代码:import turtleimport time#函数定义绘制数码管直线def drawLine(draw): turtle.penup() turtle.fd(5) turtle.pendown() if draw else turtle.penup() turtle.fd(40) turtle.penup() turtle.fd(5) turtl
2020-05-09 16:52:57
648
原创 Pycharm中安装wordcloud等库失败问题以及终端通过pip安装的Python库如何添加到Pycharm解释器中。
概述:这里介绍笔者在学习wordcloud库时安装过程中所遇到的问题和解决方案1.在Pycharm中安装wordcloud出现的问题如下图所示2.解决方法:在终端中通过wordcloud安装包安装方式,wordcloud的安装包下载链接:https://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud选择与自己Python版本想对应的即可,这里笔者Python是3.8的所以选择图中标记的,版本选择不匹配将会安装错误,如下图所示:下载完成后
2020-05-09 10:57:26
3020
DELMIA_V5R20安装包及安装教程.docx
2020-05-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人