![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 65
q__y__L
学习方向是大数据,模式识别。。。微
展开
-
C#Linq中的GroupBy
然后你想根据ID建立一个映射表你要怎么做?原创 2022-07-26 19:00:17 · 2020 阅读 · 0 评论 -
C# 两个线程轮流打印
要想两个线程轮流打印,最常见的办法是加一个锁,每当该线程获取到锁后就打印,然后释放锁,让另一个线程打印,但锁也有它的局限性,比如,如果有四个线程,两两轮流使用,可能就需要2个锁,这不是一个好办法,这里介绍一个C#内置的工具:Semaphore,即信号量的意思。是操作系统原始提供的内核同步对象。Semaphore semaphoreObject = new Semaphore(initialCount: 0, maximumCount: 5);解释一下意思:第一个参数为:initialCoun原创 2022-04-13 00:59:33 · 689 阅读 · 0 评论 -
插入排序复杂度为什么不是nlog(n)
插入排序是一种很基本的排序,其复杂度为O(n2)O(n^2),在大一学编程时没有多想,为什么不能利用二分查找改进为O(nlogn)呢O(n\log n)呢?问题描述:我们都知道插入排序就是在已有的序列上不断地插入新的元素,我们都知道二分查找的时间复杂度是O(logn)O(\log n),二分查找的条件就是序列必须是有序的。而刚好可以用在插入排序的过程中使用,这样nn个元素的排序复杂度就是nlognn原创 2016-12-21 17:15:05 · 2490 阅读 · 0 评论 -
PCA学习笔记
主成分分析(PCA)是一个很普通的数据将维方法,但是也是很常用的一个方法。虽然不难理解,但是时间一长容易和LDA搞混,于是决定自己重新梳理一遍。数据集的0维代表假设你有n个d维样本x1,x2,⋯,xn,如果我们希望用一个d维的向量代表这n个样本,或者说找一个代表向量和其他样本的总体差距越小越好(体现代表性),定义平方误差准则函数:假设你有n个d维样本\mathbf {x_1,x_2,\cdots,原创 2016-12-27 15:01:49 · 699 阅读 · 0 评论 -
推箱子的最优路径
大家一定玩过“推箱子”这个经典的游戏。具体规则就是在一个N*M的地图上,有1个玩家、1个箱子、1个目的地以及若干障碍,其余是空地。玩家可以往上下左右4个方向移动,但是不能移动出地图或者移动到障碍里去。如果往这个方向移动推到了箱子,箱子也会按这个方向移动一格,当然,箱子也不能被推出地图或推到障碍里。当箱子被推到目的地以后,游戏目标达成。现在告诉你游戏开始是初始的地图布局,请你求出玩家最少需要移动多少步原创 2017-03-08 17:00:54 · 4963 阅读 · 0 评论 -
二叉树的学习
二叉树是一种非常常见的数据结构,它结合了有序数组与链表的优点:在二叉树中查找数据与在数组中查找一样快,在二叉树添加、删除数据的速度也和在链表中一样,所以二叉树的相关技术一直是程序员面试笔试中必考的知识点。问题的思考这里引用一个例子: 二叉树,本质上,是对链表和数组的一个折中。。比如,我有一个任务,需要输入 10万个数据(32位整数),然后有两个操作: 1.添加(删除)一个整数。 2.询原创 2017-04-18 17:00:41 · 1075 阅读 · 0 评论 -
最大连续子数组和与最大连续子矩阵和
这两个问题是编程中常见的问题,而且网上有大量博客论述,这里主要是自己做一个笔记。两个之间是有关系的,所以这次放在一起复习最大连续子数组先看第一个问题:给定一个整数数组,数组里面可能有正数,负数、零。数组中的一个或多个连续数组构成一个子数组,每个子数组都有一个和,求所有子数组和的最大值。例子:数组a[]={1,-2,3,10,-4,7,2,5}.那么和最大的子数组为{3,10,-4,7,2},所以原创 2017-09-15 14:33:47 · 1235 阅读 · 0 评论