- 博客(234)
- 资源 (12)
- 收藏
- 关注
原创 经典算法 | 二维树状数组
给定一个二维数组,给定两种操作,第一种,输入s x1 y1 x2 y2,表示查询二维数组中(x1,y1)到(x2,y2)这一段矩形中所有数的和,第二组操作为a x1 y1 value,表示将数组中num[x1][y1]的数加value,如何在最快的时间内得到结果这里可以使用二维树状数组,首先是lowBit(n),这个函数的功能是返回n最低位的1所代表的数的大小,比如5,其二进制为101,那...
2018-09-24 15:53:47 738
原创 经典算法 | 给定一个有n个数的数组,里面每个数出现a次,有一个数出现b次,b小于a,求出这个数。
给定一个有n个数的数组,里面每个数出现a次,有一个数出现b次,b<a,求出这个数。这一题可以使用暴力求解,但是这样的话需要统计每个数出现的次数,空间复杂度为o(n),这里要求空间复杂度为O(1)这里可以使用二进制来解决每个int型除了符号位有32位,因此我们可以统计这n个数的每一位的值,将这些值相加,对于那些出现了a次的数而言,全部数的某一位相加必定是a的倍数,对于那个出现了b次...
2018-09-24 14:40:56 2608
原创 经典算法 | 求两个排序好的数组中第k大的数优化方法
题目描述:给定两个数组,这两个数组是排序好的,让你求这两个数组合到一起之后第K大的数。当然你可以使用遍历,第一个数组长度为n第二个数组长度为m,那么你的方法时间复杂度为o(m +n),但是有更快的方法,时间复杂度接近于O(log(m +n)),接下来介绍这种方法。基本思路如下,首先取得数组a的中位数a[aMid],然后在b中二分查找a[aMid],得到b[bMid],b[bSt]到...
2018-09-20 15:33:25 2246
原创 经典算法 | 在旋转数组中查找数字K最优化方法
题目:把一个一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,给定一个K,输出K在旋转数组中的位置,如果K不存在输出-1思路,这一题最笨的方法是将数组遍历一遍,但是这样的平均时间复杂度为O(N),肯定不是最好的解法,有O(logn)的解法比这个更好,方法就是使用优化后的二分查找的方法。首先设定两个指针left,right,要求left永远指向...
2018-09-13 10:08:30 1007
原创 经典算法 | 多个进程,每个进程需要某个资源m个,这种资源共有n个,问你最多有多少个这样的进程争夺这个资源,而不会发生死锁
假如有多个进程争夺一种资源,这个资源共有n个,每个进程需要这种资源m个,并且每个进程当得到某一个资源之后不会直到执行完成都不会释放这个占有的资源,只有这个进程的需求得到满足之后他才会执行完成,那么问最多有多少个这样的进程争夺这m个资源,一定不会发生死锁?其实这个问题的简化版本是哲学家问题,哲学家问题是说有n个餐具,每个哲学家需要2个餐具才能用餐,问最多可以有多少个哲学家,才能保证每个哲学家能够...
2018-09-01 12:32:30 12149
原创 经典算法 | 使用C++实现常用的六种排序方法
#include<iostream>using namespace std ; //num[0]作为哨兵,不使用,数组从1开始 //插入排序void InsertSort(int num[], int n){ int j; for(int i = 2 ; i <= n ; i++) { ...
2018-08-31 20:01:31 315
原创 计算机网络 | LVS | LVS集群负载均衡基础理论
1. LVS的产生背景Internet 的飞速发展给网络带宽和服务器带来巨大的挑战。从网络技术的发展来看,网络带宽的增长远高于处理器速度和内存访问速度的增长,所以,我们深信越来越多的瓶颈会出现在服务器端。很多研究显示 Gigabit Ethernet 在服务器上很难使得其吞吐率达到 1Gb/s 的原因是协议栈(TCP/IP)和操作系统的低效,以及处理器的低效,这需要对协议的处理方法、操作系统的调...
2018-06-30 14:00:05 356
原创 计算机网络 | ARP地址解析协议
ARP是解决统一局域网上主机路由器IP地址和硬件地址映射问题的一种协议1:首先,每个主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示局域网上各主机和路由器IP地址和MAC地址之间的对应关系。 2:当源主机要发送数据时,首先检查ARP列表中是否有对应IP地址的目的主机的MAC地址,如果有,则直接发送数据,如果没有,就向本网段的所有主机发送ARP数据包,该数据包包括的内容有:源主机 IP地址,...
2018-06-30 13:57:27 362
原创 Leetcode | 16. 3Sum Closest twoPoint方法拓展
Givenan array nums of n integers and an integer target, find three integers in nums such that the sum is closestto target. Return thesum of the three integers. You may assume that each input would hav...
2018-06-19 17:52:05 188
原创 LeetCode | 389. Find the Difference 字符串
Giventwo strings s and t which consist of only lowercase letters.String t isgenerated by random shuffling string s andthen add one more letter at a random position.Findthe letter that was added in t.E...
2018-06-09 21:27:04 202
原创 LeetCode | 204. Count Primes 数论 素数筛选,厄拉多塞筛法
Count the number of prime numbers less than a non-negativenumber, n.Example:Input: 10Output: 4Explanation: There are 4 prime numbers less than10, they are 2, 3, 5, 7.这一题给你一个n,让你统计小于N的所有的素数的个数。假如按照传统的方...
2018-06-07 15:39:51 430
原创 计算机网络 | 运输层协议UDP和TCP总结
传输层协议:对于传输层而言,是发送方主机和接受方主机进程之间进行通信,因此通信的双方不是主机,而是主机中的进程,比如浏览器,QQ就是两个进程,从这一点上来讲,传输层提供了进程之间的逻辑通信传输层有两个重要的协议,TCP和UDP协议端口:对于数据帧而言,使用IP地址和MAC地址都只能保证数据帧被传到正确的主机上,而不能保证传给正确的进程,数据帧传给哪个进程,是通过不同的端口来识别的,端口号共有655...
2018-06-01 13:27:04 1117
原创 读书 | 李开复自传:世界因你不同读后感1
读这本书给我最大的感受就是我从这本书中感受到了李开复的格局,那是我们任何一个人都无法比拟的格局,他一直希望世界能够因为他而不同,并且一直让这个梦想引领他一生,李开复一直说,lead your life 而不是live your life,要用梦想引领你的一生,要用感恩,真诚,助人圆梦的心态引领一生,而他也确实做到了。李开复曾经在苹果,SGI,微软,Google等四个世界顶级公司工作过,他年仅28岁...
2018-05-27 15:32:56 1049
原创 LeetCode | 365. Water and Jug Problem 数学原理详细分析
Youare given two jugs with capacities x and y litres.There is an infinite amount of water supply available. You need to determinewhether it is possible to measure exactly z litresusing these two jugs....
2018-05-17 10:42:12 864
原创 python笔记 | python3编写可以从指定url下载文件的小程序
这里先说一下为了获取网页需要第三方模块requests,安装方法为Sudo apt-getupdateSudo apt-getinstall python3-pipSudo pip3install requestsRequests需要使用pip3来安装代码如下: #!/usr/bin/envpython3import requests//这里引用requests第三方模块 defdownload(...
2018-05-16 11:14:04 4740
原创 优化算法 | SVM支持向量机和HOG方向梯度直方图基础原理分析
首先需要明白SVM(支持向量机)的原理SVM(支持向量机)分类器的原理是利用“分类超平面”来实现数据分类。在利用“分类超平面”对数据进行划分时,遵循“间距最大”原则。例如,将二维平面内的两组数据分类,可以确定很多个“分类超平面”,在二维维度下,超平面退化为一条直线:上图中使用绿线将蓝色圆圈和红色方块进行分类,可以有多种方式。那么根据SVM原理,哪一条线是最佳分类线呢?答案是,最佳分类线因该是距离蓝...
2018-05-16 09:19:53 1244
原创 python笔记 | python中的类
1. 类的定义>>>class theClass:... """a simple exampleclass"""... a = 123... b = 1.23... def f(self):... return 'aasdfasdf'类的定义如下所示,在类中成员变量默认为公有类型,成员函数的第一个参数一定要是self...
2018-05-15 19:36:29 291
原创 Linux学习笔记 | Linux下more,less,head,less命令的使用
1. more命令more命令类似于cat,其会加载整个文件,并且一页一页的读取文件,可以使用space翻到下一页,可以使用b回到上一页,不过貌似使用space读取完整个文件之后会直接退出参数 描述 +n 从笫 n 行开始显示//比如+3 +4 -n 定义屏幕大小为 n 行//比如-3 -4 +/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开...
2018-05-07 17:19:04 364
原创 C++笔记 | C++ 11新特性nullptr使用,常数表达式constexpr,类型推导auto和decltype
nullptr nullptr 出现的目的是为了替代 NULL。在某种意义上来说,传统 C++ 会把 NULL、0 视为同一种东西,这取决于编译器如何定义 NULL,有些编译器会将 NULL 定义为 ((void*)0),有些则会直接将其定义为 0。C++ 不允许直接将 void * 隐式转换到其他类型,但如果 NULL 被定义为 ((void*)0),那么当编译char*ch=NULL;时,NU...
2018-05-04 10:29:05 1374
原创 LeetCode | 357. Count Numbers with Unique Digits 数论
Given a non-negative integer n, count all numbers withunique digits, x, where 0 ≤ x < 10n.Example:Given n = 2, return 91. (The answer should be the total numbers in the range of0 ≤ x < 100, excl...
2018-05-01 16:42:32 121
原创 LeetCode | 13. Roman to Integer 字符串规则
Romannumerals are represented by seven different symbols: I, V, X, L, C, D and M.Symbol ValueI 1V 5X 10L 50C 100D 500M ...
2018-05-01 13:59:32 136
原创 经典算法 | 求解最大连续子段O(nlogn)时间复杂度的算法
传统的求某个序列的最长递增子序列的题目,假如使用一般的DP去做的话时间或达到O(n ^ 2),,要求使用O(nlog(n))的时间解决题目,因此我们需要考虑一种特殊的DP方法来解决题目定义一个数组Dp,假设数组里面有Dp[1 ~ n]的值,给定的数组为nums,Dp[1 ~ n]对应于nums[1 ~ m]的范围,Dp[i]的具体含义为,在nums[1~m]的范围取递增子序列,可以找到的所有长度为...
2018-05-01 13:16:35 1539
原创 LeetCode | 343. Integer Break Dp
Given a positive integer n, break it into the sum of atleast two positive integersand maximize the product of those integers. Return the maximum product you canget.For example, given n =2, return 1 (2...
2018-05-01 13:14:25 159
原创 python笔记 | python中的文件操作
1.文件打开我们使用open(),函数打开一个文件,这个函数有两个参数,第一个参数为文件名或者是路径,这个路径可以是绝对路径,也可以是相对路径,不过假如是文件名的话,需要在当前目录下,比如Fobj = open(“mama.txt”),Fobj = open(“code/mama.txt”),//相对路径Fobj = open(“/home/code/mama.txt”),//绝对路径第二个参数为...
2018-04-27 21:26:49 252
原创 LeetCode | 300. Longest Increasing Subsequence Dp
Given an unsorted array of integers, find the length of longestincreasing subsequence.For example,Given [10, 9, 2, 5, 3, 7, 101, 18],The longest increasing subsequence is [2, 3, 7, 101],therefore the ...
2018-04-26 22:11:07 198
原创 LeetCode | 188. Best Time to Buy and Sell Stock IV DP难题
Say you have an array for which the ith elementis the price of a given stock on day i.Design an algorithm to find the maximum profit. You may completeat most k transactions.Note:You may not engage in ...
2018-04-24 10:36:06 286
原创 LeetCode | 216. Combination Sum III BFS
Findall possible combinations of k numbers that add up to a number n,given that only numbers from 1 to 9 can be used and each combination should bea unique set of numbers.Example1:Input: k =3, n = 7Ou...
2018-04-21 14:39:17 146
原创 复数类n次方原理以及C#代码实现
完整代码下载https://download.csdn.net/download/u012737193/10359608我们这里将复数类表示为complx = real + imag * i那么要如何计算complex ^ n呢,这里的n是double类型,可以是任何数首先进行如下转换因此complex = r *(cos(mu)+ sin(mu)*i) = r*(e ^ (mu * i))(欧拉...
2018-04-19 11:12:16 2229
原创 优化算法 | 使用Knn算法进行数据预测流程分析
现在给你一组数据{ a 1 ,a 2, ⋯ ,a n},比如这组数据表示的是第1个月到第n个月的电量使用情况现在让你根据这组数据使用KNN算法去预测a n+1的值,也就是第n+1个月的电量使用情况由于任何一个月的用电量总是和前几个月的用电量关系最密切 , 所以 , 用长度为 m 的向量 β 0 = { a n - m +1 , a n - m +2 ,⋯ , a n - 1 , a n} 来预测 ...
2018-04-16 19:05:32 2352 2
原创 python中的字典dict
Python中的字典dict是一组无序键值对的集合,其中每一个键的值都是独一无二的>>>data = {1:"a", 2:'b', 3:'c', 4:'d'}>>>data{1: 'a', 2: 'b',3: 'c', 4: 'd'}>>>data[2]'b'新建dict方法如下,使用{}和value:value的形式新建,可以使用{}来新建空...
2018-04-15 17:49:03 600
原创 python中的集合set
Python中set是一种无序无重复元素的数据结构,叫做集合支持&(求交),|(联合),-(求差),^(求对称差集)的运算大括号和set()方法可以用来创建集合,想要常见空集合必须使用set()方法而不是{}方法,后面一种方法用来创建空字典>>>fruit = {'apple', 'banana', 'pear', 'orange'}>>>print(f...
2018-04-15 09:39:24 354
原创 python中列表的操作以及使用列表实现栈和队列
>>> a = [1, 2, 3, 4, 5, 6]>>> a.append(45)>>> a[1, 2, 3, 4, 5, 6,45]首先我们建立了一个列表 a。然后调用列表的方法 a.append(45) 添加元素 45 到列表末尾。你可以看到元素 45 已经添加到列表的末端了。有些时候我们需要将数据插入到列表的任何位置,这时我们可以使用列...
2018-04-15 08:50:54 763
原创 LeetCode | 424. Longest Repeating Character Replacement循环剪枝题
Givena string that consists of only uppercase English letters, you can replace anyletter in the string with another letter at most ktimes.Find the length of a longest substring containing all repeatin...
2018-04-10 20:05:09 223
原创 计算机网络 | IP地址的分类
首先需要明白,全0的地址也就是0.0.0.0对应于当前主机,全1的地址也就是255.255.255.255对应于当前子网的广播地址下面是地址的分类A类地址:以0开头,第一个字节的范围为1~127:1.0.0.0~127.255.255.255B类地址:以10开头,第一个字节的范围为128~191(B类地址第一个字节共有64种)128.0.0.0~191.255.255.255C类地址:以110开头...
2018-04-09 21:26:15 860
原创 优化算法 | 灰色预测模型算法GM(1,1)流程分析
灰色预测模型(Gray Forecast Model)是通过少量的、不完全的信息,建立数学模型并做出预测的一种预测方法灰色预测模型适用于小样本,含有不确定性因素的系统首先,假如给定一组数据X1={x11,x12,x13…x1n},你需要预测x1(n+1)的值是多少这里可以使用灰度预测模型也就是GM(1,1)来进行预测首先生成累加序列X2,x21=x11,x22=x11+x12….x2(n)=x11...
2018-04-09 14:37:11 10743 2
原创 计算机网络 | OSI,TCPIP五层协议的体系结构,以及各层协议
OSI协议分层(7层):物理层,数据链路层,网络层,运输层,会话层,表示层,应用层TCP/IP协议分层:网络接口层,网际层,运输层,应用层五层协议:物理层,数据链路层,网络层,运输层,应用层每一层的协议如下:物理层:RJ45,CLOCK,IEEE802.3(中继器,集线器)数据链路层:PPP:点对点协议(PPP)为在点对点连接上传输多协议数据包提供了一个标准方法,FR,HDLC,VLAN,MAC(...
2018-04-06 11:25:24 1867
原创 leetcode Weekly Contest 77 807. Max Increase to Keep City Skyline
In a 2 dimensional array grid, eachvalue grid[i][j] representsthe height of a building located there. We are allowed to increase the heightof any number of buildings, by any amount (the amounts can be...
2018-04-05 14:53:01 216
原创 leetcode Weekly Contest 77 804. Unique Morse Code Words
International Morse Code defines a standard encodingwhere each letter is mapped to a series of dots and dashes, as follows: "a" mapsto ".-", "b" mapsto "-...", "c" mapsto "-.-.", and so on.For con
2018-04-05 14:52:27 130
原创 leetcode Weekly Contest 77 806. Number of Lines To Write String
806. Number of Lines To Write StringMy SubmissionsBack to Contest· User Accepted:1585· User Tried:1647· Total Accepted:1607· Total Submissions:2257· Difficulty:EasyWe are...
2018-04-05 14:51:50 157
原创 经典算法 | 求整数的全部质数因子分析与解答
有这么一道题:功能:输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为2 2 3 3 5 )最后一个数后面也要有空格 这一道题目让你找给定整数N的全部的质数因子。一般的人可能会考虑每一次遍历一遍2到N的全部的整数,找到一个质数因子a,然后N/=a,直到N等于1,但是这种方法其实就是暴力搜索,时间效率并不好其实有一种更好的方法,就是设定i=2,i一直递增,当N%i==0的...
2018-04-05 11:36:00 29002 7
用于求解一元四次方程的类的头文件
2018-06-04
cmake解析cgal选定目标文件夹成功后生成的库文件包
2017-04-27
winform c#开发的导入图片 处理图片 导出图片的小程序
2015-05-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人