Steven's space

码农的世界不只是coding


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 站点地图

  • 搜索

重拾十大经典排序算法

发表于 2018-07-23 | 分类于 linux | 阅读次数:

最近在工作中偶然间涉及到数据库的存储和访问,数据库里存放着员工的指纹、年龄以及姓名等信息,当然指纹是通过md5加密存储的。目前需要对员工的年龄、学历、工作年限等进行排序,如果只有几十个上百个样本,应该不会那么麻烦;关键这是几万名员工的数据,这个量很大,马虎不得。悄悄的告诉你,别惹我,我懂得删库跑路哦。

脑海中对排序的记忆有点模糊,只对「归并排序」印象较为深刻,为了加深理解,重拾「数据结构与算法」,并总结了一下常用的十大经典排序算法,由于平台为linux,因此代码全部用C++实现,全部源码均在linux下编译通过并测试成功,可以作为参考。

排序算法在程序猿的编程生涯中虽然用的不多,但是作为基本功,还是要掌握一下。排序算法是「数据结构与算法」中最基本的算法,它分为「内部排序」和「外部排序」;「内部排序」一般在内存中实现;当数据量很大时,内存有限,不能将所有的数据都放到内存中来,这个时候必须使用「外部排序」。

先看一张图,对常用算法的时间复杂度做个比较:

阅读全文 »

ROS下使用wii游戏手柄控制移动机器人

发表于 2018-07-03 | 分类于 ROS | 阅读次数:

wii游戏手柄基于蓝牙技术,可以与带蓝牙模块的ARM主板或PC连接。得益于ROS系统强大的生态圈,wii的驱动已经有现成的可以使用。挑选手柄时认准「原版」「不带加密」「没有陀螺仪」的「右手柄」。

阅读全文 »

卡尔曼滤波中关键参数的调整

发表于 2018-06-05 | 分类于 ROS | 阅读次数:

写在前面

对于卡尔曼滤波,大多数人仅限于会用,很少有人能透彻的理解,而关于卡尔曼滤波中那几个关键参数的调整更是一头雾水。自从写完「深度解析卡尔曼滤波在IMU中的应用」一文,很多朋友咨询卡尔曼滤波的参数到底怎么调整,工作之余总结一下,由于水平有限,错误之处在所难免,欢迎交流指正。

阅读全文 »

SLAM 技术基础

发表于 2018-05-22 | 分类于 ROS | 阅读次数:

机器人想实现自主移动和导航必须知道自己在哪,周围什么情况等;SLAM就是帮助机器人实现定位与地图构建功能的一种方案或技术。SLAM的全称为Simultaneous Localization And Mapping即「同时定位与地图构建」,最早用于军事核潜艇中的海底定位。

阅读全文 »

工欲善其事,必先利其器,那些年程序猿用过的经典工具

发表于 2018-05-18 | 分类于 linux | 阅读次数:

选择一款好用的工具,能大大提高开发效率。

阅读全文 »

SLAM学习资源汇总

发表于 2018-05-18 | 分类于 ROS | 阅读次数:

书籍

  • Linear Algebra Done Right 线性代数
  • Sparse Matrix 稀疏矩阵 参考 TIM DAVIS 的个人课程 CSCE689:Sparse Matrix Algorithms
  • 「Probabilistic robotics」 作者 Sebastian THRUN
  • 「Principles of Robot Motion Theory,Algorithms and Implementation」 作者 Sebastian THRUN
  • 「SLAM for Dummies」
  • 「STATE ESTIMATION FOR ROBOTICS」
  • 「Course on SLAM」
  • 「Loop Closure Transformation Estimation and Verification Using 2D LiDAR Scanners」
  • 「Multiple View Geometry in Computer Vision」
  • 「视觉SLAM十四讲 从理论到实践」 高翔 张涛
阅读全文 »

保持持续竞争力 不要让自己成为企业的不良资产

发表于 2018-05-07 | 分类于 living | 阅读次数:

企业不是福利院,它是要盈利的,老板雇佣员工的目的就是让自己的盈利最大化,不排除有的老板很高尚,自己一分钱不拿,就是为了造福员工,造福百姓。说实话还没遇见过这么好的老板,要是有,你们赶紧介绍给我。

阅读全文 »

新版李雷与韩梅梅

发表于 2018-05-07 | 分类于 living | 阅读次数:

就算没有房,没有车,没有存款,我也嫁给你,谁让我们是真爱呢

阅读全文 »

深度解析卡尔曼滤波在IMU中的使用

发表于 2018-05-03 | 分类于 ROS | 阅读次数:

卡尔曼滤波主要分两个步骤,预测加校正。预测是基于上一时刻的状态对当前状态进行估计,校正是根据当前状态的观测与上一时刻的估计进行综合分析,估计出系统的最优状态值,然后下一时刻接着重复这个过程;卡尔曼不断的进行迭代,它不需要大量的粒子状态输入,只需要过程量,因此它的速度很快,非常适合线性系统的状态估计。

阅读全文 »

ROS通信模型之深度分析

发表于 2018-04-23 | 分类于 ROS | 阅读次数:

轮子既要会用,更要懂得其原理,才有可能造出新轮子。
基于ROS框架对ROS通信模型做进一步分析。

阅读全文 »
12…7
Steven Shi

Steven Shi

码农

63 日志
5 分类
56 标签
RSS
GitHub 知乎
© 2019 Steven Shi
Hosted by Coding Pages