- 博客(32)
- 收藏
- 关注
原创 算法笔记》学习笔记4.2
《算法笔记》学习笔记第四章 入门篇(2)–算法初步4.2散列4.2.1 散列的定义与整数散列散列(hash):将元素(keykeykey)通过一个函数(HHH)转换为整数(H(key)H(key)H(key)),使得该整数可以尽量唯一地代表整个元素常用散列函数:直接定址法:恒等变换(H(key)=keyH(key) = keyH(key)=key)或线性变换(H(key)=a∗ke...
2019-01-28 13:30:32 192
原创 算法笔记4.1
《算法笔记》学习笔记第四章 入门篇(2)–算法初步4.1.1 选择排序void select_sort(int *a, int size) { for(int i = 0; i < size - 1; i++) { int min_index = i; for(int j = i + 1; j < size; j++) { ...
2019-01-23 17:23:51 180
原创 LintCode-46. 主元素
题目描述 给定一个整型数组,找出主元素,它在数组中的出现次数严格大于数组元素个数的二分之一。 注意事项 You may assume that the array is non-empty and the majority number always exist in the array. 样例 给出数组[1,1,1,1,2,2,2],返回 1 挑战
2018-02-02 21:41:01 237
原创 LintCode-44. 最小子数组
题目描述 给定一个整数数组,找到一个具有最小和的子数组。返回其最小和。 注意事项 子数组最少包含一个数字 样例 给出数组[1, -1, -2, 1],返回 -3分析 利用上一道题(文章链接)相反的思路加上当时网上借鉴的算法即可完成。代码class Solution {public: /* * @param nums: a
2018-02-02 21:14:58 229
原创 LintCode-41. 最大子数组
题目描述 给定一个整数数组,找到一个具有最大和的子数组,返回其最大和。 注意事项 子数组最少包含一个数 样例 给出数组[−2,2,−3,4,−1,2,1,−5,3],符合要求的子数组为[4,−1,2,1],其最大和为6 挑战 要求时间复杂度为O(n)分析 不考虑挑战的要求的话,需要两层循环,外层循环从开始遍历到结束,内层循环用来寻找最大值
2018-02-02 21:06:57 228
原创 LintCode-39. 恢复旋转排序数组
题目描述 给定一个旋转排序数组,在原地恢复其排序。 说明 什么是旋转数组? 比如,原始数组为[1,2,3,4], 则其旋转数组可以是[1,2,3,4], [2,3,4,1], [3,4,1,2], [4,1,2,3] 样例 [4, 5, 1, 2, 3] -> [1, 2, 3, 4, 5] 挑战 使用O(1)的额外空间和O(n)时间复杂度
2018-01-26 15:27:11 297
原创 LintCode-35. 翻转链表
题目描述 翻转一个链表 样例 给出一个链表1->2->3->null,这个翻转后的链表为3->2->1->null 挑战 在原地一次翻转完成分析 看完题目第一个想到的就是用递归,每次让最后一个节点的next指针指向他的前置节点。代码/** * Definition of ListNode * * class ListNo
2018-01-26 14:47:45 205
原创 LintCode-30. 插入区间
题目描述 给出一个无重叠的按照区间起始端点排序的区间列表。 在列表中插入一个新的区间,你要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间)。 样例 插入区间[2, 5] 到 [[1,2], [5,9]],我们得到 [[1,9]]。 插入区间[3, 4] 到 [[1,2], [5,9]],我们得到 [[1,2], [3,4], [5,9]]。分析
2018-01-25 19:30:35 338
原创 LintCode-28. 搜索二维矩阵
题目描述 写出一个高效的算法来搜索 m × n矩阵中的值。 这个矩阵具有以下特性: 每行中的整数从左到右是排序的。 每行的第一个数大于上一行的最后一个整数。 样例 考虑下列矩阵: [ [1, 3, 5, 7], [10, 11, 16, 20], [23, 30, 34, 50] ] 给出 target = 3,
2018-01-25 16:15:27 187
原创 LintCode-22. 平面列表
题目描述 给定一个列表,该列表中的每个要素要么是个列表,要么是整数。将其变成一个只包含整数的简单列表。 注意事项 如果给定的列表中的要素本身也是一个列表,那么它也可以包含列表 样例 给定 [1,2,[1,2]],返回 [1,2,1,2]。 给定 [4,[3,[2,[1]]]],返回 [4,3,2,1]。 挑战 请用非递归方法尝试解答这道题。
2018-01-24 19:27:51 358 2
原创 LintCode-14. 二分查找
题目描述 给定一个排序的整数数组(升序)和一个要查找的整数target,用O(logn)的时间查找到target第一次出现的下标(从0开始),如果target不存在于数组中,返回-1。 样例 在数组 [1, 2, 3, 3, 4, 5, 10] 中二分查找3,返回2。 挑战 如果数组中的整数个数超过了2^32,你的算法是否会出错?分析 根据题目描述可
2018-01-24 14:43:35 191
原创 LintCode-13. 字符串查找
题目描述 对于一个给定的 source 字符串和一个 target 字符串,你应该在 source 字符串中找出 target 字符串出现的第一个位置(从0开始)。如果不存在,则返回 -1。 说明 在面试中我是否需要实现KMP算法? 不需要,当这种问题出现在面试中时,面试官很可能只是想要测试一下你的基础应用能力。当然你需要先跟面试官确认清楚要怎么实现这个题。
2018-01-23 20:09:10 244
原创 LintCode-9. Fizz Buzz 问题
题目描述 给你一个整数n. 从 1 到 n 按照下面的规则打印每个数: 如果这个数被3整除,打印fizz. 如果这个数被5整除,打印buzz. 如果这个数能同时被3和5整除,打印fizz buzz. 样例 比如 n = 15, 返回一个字符串数组: [ “1”, “2”, “fizz”, “4”, “buzz”, “f
2018-01-23 19:12:21 306
原创 LintCode-8. 旋转字符串
题目描述 给定一个字符串和一个偏移量,根据偏移量旋转字符串(从左向右旋转) 样例 对于字符串 “abcdefg”. offset=0 => “abcdefg” offset=1 => “gabcdef” offset=2 => “fgabcde” offset=3 => “efgabcd” 挑战 在数组上原地旋转,使用O(1)的额外空间
2018-01-23 12:38:16 311
原创 LintCode-6合并排序数组 II(C++)
题目描述 合并两个排序的整数数组A和B变成一个新的数组。 样例 给出A=[1,2,3,4],B=[2,4,5,6],返回 [1,2,2,3,4,4,5,6]原始代码class Solution {public: /* * @param A: sorted integer array A * @param B: sorted int
2018-01-22 23:42:41 702
原创 学习笔记-10.13
Python学习初识PythonPython是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言(大佬果然任性)。主要优点:简便,通俗易懂(看了一些代码感觉就像Chinglish),跨平台,有丰富的库主要缺点:运行速度较慢(但多数情况无影响)Python语法基本数据类型整数,浮点数,字符串,和布尔值与以前接触过的语言没有多少区别。或
2017-10-13 22:05:15 201
原创 机器学习第一周学习笔记
计算机视觉 计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,用电脑处理成为更适合人眼观察或传送给仪器检测的图像。KNN算法实现(C++)#include <iostream>#include <string>#include <vector>#include <set>#include <
2017-09-29 22:44:35 264
原创 第十章 降维与度量学习(10.1-10.3)
第十章 降维与度量学习k近邻k-Nearest Neighbor学习低维嵌入主成分分析降维导致的结果
2017-08-18 20:25:53 823
原创 第九章 聚类
第九章 聚类聚类任务性能度量距离计算闵科夫斯基距离Minkowski distance连续属性与离散属性有序属性与无序属性混合属性具有不同重要性的属性原型聚类k均值算法学习向量量化LVQ高斯混合聚类密度聚类DBSCAN算法层次聚类
2017-08-11 22:39:25 1292
原创 第六章 支持向量机
第六章 支持向量机间隔与支持向量支持向量与间隔对偶问题dual problem核函数kernel function软间隔与正则化支持向量回归
2017-08-11 18:43:41 1185
原创 第五章 神经网络
第五章 神经网络神经元模型感知机与多层网络感知机Perceptron多层网络误差逆转传播算法全局最小与局部极小其他常见神经网络RBF网络ART网络SOM网络级联相关网络Elman网络Boltzmann机深度学习
2017-07-28 22:53:15 1478
原创 第十章 图像分割(10.1-10.3)
第十章 图像分割点线和边缘检测点检测线检测使用函数edge检测边缘使用霍夫变换进行线检测阈值处理基础知识全局全局阈值处理局部阈值处理
2017-07-04 17:09:31 855
原创 第九章 形态学图像处理
第九章 形态学图像处理预备知识二值图像集合和逻辑运算符膨胀和腐蚀膨胀腐蚀膨胀与腐蚀的结合开运算与闭运算击中或不击中变换使用查找表函数bwmorph
2017-06-30 14:46:52 829
原创 第六章 彩色图像处理
第六章 彩色图像处理RGB图像索引图像彩色空间转换NTSC彩色空间YCbCr彩色空间HSV彩色空间CMY和CMYK彩色空间HSI彩色空间彩色图像处理基础彩色变换彩色图像的空间滤波彩色图像平滑彩色图像锐化直接在RGB向量空间的处理使用梯度进行彩色边缘检测在RGB向量空间中进行图像分割
2017-06-30 11:57:32 1780
原创 第二章 灰度变换与空间滤波
第二章 灰度变换与空间滤波灰度变换函数对数及对比度拉伸变换实用M函数绘制图像直方图第二章 灰度变换与空间滤波灰度变换函数
2017-06-16 23:02:25 540
原创 第一章 绪言
第一章 绪言数字图像处理MATLAB数字图像表示坐标约定作为矩阵的图像图像的输入输出及显示函数类和图像类型MATLAB中用于图像处理的类图像类型灰度级图像二值图像通用的类转换语法一些重要的标准数组M函数编程M文件运算符数组索引代码优化
2017-06-16 14:36:54 481
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人