- 博客(67)
- 收藏
- 关注
原创 链表中点查找
快慢指针class Solution {public: ListNode* middleNode(ListNode* head) { ListNode* fast = head; ListNode* slow = head; //当为奇数时,slow到达中间结点时,fast到达最后一个结点 fast->next = NULL //当为偶数时,slow到达中间结点时,fast到达空 fast = NULL
2021-11-08 17:22:34
155
原创 链表中环的入口节点
https://leetcode-cn.com/problems/c32eOV/class Solution {public: ListNode *detectCycle(ListNode *head) { ListNode* fast = head; ListNode* slow = head; ListNode* meet = NULL; while(fast){ fast = fast->next
2021-11-07 11:17:39
116
原创 链表相交题
https://leetcode-cn.com/problems/intersection-of-two-linked-lists-lcci/ // 将两个链表头指针对齐,开始向后查找,直到两个链表指针指向相同,则找到相交结点 int get_len(ListNode *head){ int len = 0; while(head){ len++; head = head->next; } return len; }
2021-11-07 10:41:00
106
原创 92. 反转链表 II
class Solution {public: ListNode* reverseBetween(ListNode* head, int left, int right) { int len = right-left+1;//需要逆置的部分长度 ListNode* result = head; //逆置后链表的头结点,如果left>1,就是head ListNode* pre_head = NULL; //定义逆置结点的前一个结点,用来连接
2021-11-07 09:40:59
104
原创 LeetCode刷题——剑指 Offer 24. 反转链表
解法一:定义一个指向NULL的新链表new_head,让head逐步指向new_head,实现反转(代入具体的数据理解)class Solution {public: ListNode* reverseList(ListNode* head) { ListNode* new_head = NULL; while(head){ ListNode *p=head->next; //保存head的下一个 head->
2021-11-06 15:31:57
179
原创 阻抗控制英文名词
Impedance control 阻抗控制stiffness control 刚度控制admittance control 导纳控制compliance control 柔顺控制 研究阻抗的控制的动机有两点:精准的位置控制是不够的;实现安全的环境互动。
2021-07-21 19:24:13
518
原创 四元数和欧拉角理解
四元数和欧拉角:https://blog.csdn.net/wwlcsdn000/article/details/79421612惯性坐标系、物体坐标系、世界坐标系:https://blog.csdn.net/loongkingwhat/article/details/82109216
2021-07-21 19:21:42
155
原创 连续关节运动意图的估计方法
连续关节运动意图的估计方法主要包括生物力学模型法和回归模型法生物力学模型方法有助于从微观的角度,即肌肉组织的角度揭示运动产生的机制。20世纪40年代,Hill首次提出了经典的肌肉力学模型,为肌肉力学的发展奠定了基础,为运动、医学诊断等领域提供了有价值的参考。Buchanan等人提出了一种基于Hill肌肉模型的人类上肢正向动力学模型,以帮助中风和脑瘫引起的肌肉痉挛症状的残疾患者控制基于sEMG的假手的运动。为了评估脑卒中患者的肌肉功能,制定可靠的治疗方案,邵等人基于改进的Hill肌力模型建立了人体踝关节力矩
2021-07-21 19:16:49
1019
原创 机器人的柔顺控制概述
一般说来,机械手的柔顺控制可以分为被动柔顺控制和主动柔顺控制。被动柔顺控制存在机械手的高刚度和高柔度的矛盾。被动顺应器件要求较高,适应性较差,限制了其应用范围。主动顺应控制使机械手具有接触力感知和控制能力。主动顺应控制可分为力/位置混合控制策略、阻抗控制策略和自适应控制策略。力/位置控制允许机械手同时控制每个关节的力和位置,但这种策略的计算复杂度相对较高。自适应控制策略可以通过机械手的自主调整实现更高的柔顺性。然而,目前关于自适应控制的研究大多还停留在理论研究和仿真层面,还没有提升到实际应用场景。
2021-07-21 19:07:08
5389
原创 KNN算法-鸢尾花种类预测(交叉验证、网格搜索)
什么是交叉验证没交叉验证:将拿到的训练数据,分为训练和验证集。以下图为例:将数据分成4份,其中一份作为验证集。然后经过4次(组)的测试,每次都更换不同的验证集。即得到4组模型的结果,取平均值作为最终结果。又称4折交叉验证。分析我们之前知道数据分为训练集和测试集,但是为了让从训练得到模型结果更加准确。做以下处理训练集:训练集+验证集测试集:测试集为什么需要交叉验证交叉验证目的:为了让被评估的模型更加准确可信问题:这个只是让被评估的模型更加准确可信,那么怎么选择或者调优参数呢?网格
2020-09-23 14:40:28
2398
原创 KNN算法-鸢尾花种类预测实现(无K值优化)
K近邻算法APIsklearn.neighbors.KNeighborsClassifier(n_neighbors=5,algorithm=‘auto’)n_neighbors:int,可选(默认= 5),k_neighbors查询默认使用的邻居数algorithm:{‘auto’,‘brute’,‘kd_tree’,‘ball_tree’}快速k近邻搜索算法,默认参数为auto,可以理解为算法自己决定合适的搜索算法除此之外,用户也可以自己指定搜索算法ball_tree、kd_tre
2020-09-23 14:38:15
594
原创 pandas10_高级处理_分组与聚合
import numpy as npimport pandas as pd分组与聚合DataFrame.groupby(key, as_index=False)as_index=False添加一列索引,默认为truekey:分组的列数据,可以多个# 案例:不同颜色的不同笔的价格数据col =pd.DataFrame({'color': ['white','red','green','red','green'], 'object': ['pen','pencil','pencil','a
2020-09-16 16:00:31
323
原创 pandas9_高级处理_交叉表和透视表
import numpy as npimport pandas as pd交叉表:交叉表用于计算一列数据对于另外一列数据的分组个数(用于统计分组频率的特殊透视表)pd.crosstab(value1, value2)透视表:透视表是将原有的DataFrame的列分别作为行索引和列索引,然后对指定的列应用聚集函数DataFrame.pivot_table([], index=[])一、使用pd.crosstab()案例分析数据准备data = pd.read_csv
2020-09-16 15:59:26
258
原创 Pandas8_高级处理-数据离散化和数据合并
import numpy as npimport pandas as pd数据离散化什么是数据离散化?连续属性的离散化就是在连续属性的值域上,将值域划分为若干个离散的区间,最后用不同的符号或整数 值代表落在每个子区间中的属性值。离散化有很多种方法,这使用一种最简单的方式去操作,例如:原始人的身高数据:165,174,160,180,159,163,192,184假设按照身高分几个区间段:150~165, 165180,180195这样我们将数据分到了三个区间段,我可以对
2020-09-16 15:58:16
309
原创 Pandas7_高级处理-缺失值NaN处理
import numpy as npimport pandas as pd电影数据缺失值的处理获取电影数据movie = pd.read_csv("./data/IMDB-Movie-Data.csv")# 缺失值类型是float型type(np.NaN)float判断缺失值是否存在pd.notnull()pd.notnull(movie) Rank Title Genre Descripti
2020-09-16 15:57:27
1413
原创 Pandas6_文件的读取和存储
import pandas as pd我们的数据大部分存在于文件当中,所以pandas会支持复杂的IO操作pandas的API支持众多的文件格式,例如CSV,SQL,XLS,JSON,HDF5CSV文件read_csv 读取文件pandas.read_csv(filepath_or_buffer,sep =’,’,usecols)filepath_or_buffer:文件路径sep:分隔符,默认用“,”替换usecols:指定重新读取的列名,列表形式# 读取文件,并且指定只获取'
2020-09-16 15:44:13
385
原创 Pandas5_画图
import pandas as pdimport numpy as npimport matplotlib.pyplot as pltpandas画图对象.plot(kind=类型)line——折线图bar——柱状图barh——旋转90度的柱状图hist——直方图pie ——饼图scatter——散点图date1 = pd.date_range('2020-7-1', '2020-7-20')col = ['open', 'high', 'close', 'low', 'vo
2020-09-16 15:40:30
218
原创 Pandas4_DataFream运算
import pandas as pdimport numpy as npimport matplotlib.pyplot as pltdate1 = pd.date_range('2020-7-1', '2020-7-20')col = ['open', 'high', 'close', 'low', 'volume', 'price_change', 'p_change', 'turnover']data = pd.DataFrame(np.random.randn(20, 8
2020-09-16 15:34:53
317
原创 Pandas3_基本数据操作
import numpy as npimport pandas as pddate1 = pd.date_range('2020-7-1', '2020-7-20')col = ['open', 'high', 'close', 'low', 'volume', 'price_change', 'p_change', 'turnover']data = pd.DataFrame(np.random.randn(20, 8), index=date1, columns=col)dat
2020-09-16 15:25:30
355
原创 Pandas1_介绍
Pandas介绍2008年WesMcKinney开发出的库专门用于数据挖掘的开源python库以Numpy为基础,借力Numpy模块在计算方面性能高的优势基于matplotlib,能够简便的画图独特的数据结构Pandas优势增强图表可读性便捷的数据处理能力读取文件方便封装了Matplotlib、Numpy的画图和计算...
2020-09-16 15:08:23
209
原创 N维数组_4_数组运算
import numpy as np1.数组与数的运算arr = np.array([[1, 2, 3, 2, 1, 4], [5, 6, 1, 2, 3, 1]])arr + 1arr / 2array([[0.5, 1. , 1.5, 1. , 0.5, 2. ], [2.5, 3. , 0.5, 1. , 1.5, 0.5]])# 可以对比python列表的运算,看出区别a = [1, 2, 3, 4, 5]a * 3[1, 2, 3, 4, 5, 1, 2,
2020-08-28 12:08:44
334
原创 N维数组_3_ndarray运算
import numpy as np1.逻辑运算# 生成10名同学,5门功课的数据score = np.random.randint(40, 100, [10, 5])scorearray([[98, 47, 44, 77, 43], [46, 78, 52, 54, 87], [64, 78, 67, 75, 59], [59, 72, 78, 59, 50], [92, 55, 56, 81, 84], [54, 94,
2020-08-28 12:07:48
254
原创 N维数组_2_ndarray基本操作
import numpy as npimport matplotlib.pyplot as plt1.生成数组的方法1.1 生成0和1的数组# np.ones(shape, dtype)# np.ones_like(a, dtype)# np.zeros(shape, dtype)# np.zeros_like(a, dtype)one = np.ones([4, 8], 'float64')onearray([[1., 1., 1., 1., 1., 1., 1., 1.],
2020-08-28 12:05:15
441
原创 N维数组_1_ndarray介绍
import numpy as npimport randomimport time1.Numpy中ndarray介绍score = np.array( [[80, 89, 86, 67, 79], [78, 97, 89, 67, 81], [90, 94, 78, 67, 74], [91, 91, 90, 67, 69], [76, 87, 75, 67, 86], [70, 79, 84, 67, 84], [94, 92
2020-08-28 12:01:17
433
原创 matplotlib_2_常见图形绘制
1.散点图import matplotlib.pyplot as plt# 0.准备数据x = [225.98, 247.07, 253.14, 457.85, 241.58, 301.01, 20.67, 288.64, 163.56, 120.06, 207.83, 342.75, 147.9, 53.06, 224.72, 29.51, 21.61, 483.21, 245.25, 399.25, 343.35]y = [196.63, 203.88, 210.75,
2020-08-28 11:55:08
153
原创 matplotlib_1_绘图功能介绍
1.图像基本绘制功能演示import matplotlib.pyplot as pltimport random# 1.生成数据x = range(60)y_beijing = [random.uniform(10,15) for i in x]y_shanghai = [random.uniform(20,25) for i in x]# 2.创建画布plt.figure(figsize=(20,5),dpi=100)# 3.绘制图像# plt.plot(x,y,color="r"
2020-08-28 11:52:23
219
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅