
算法
文章平均质量分 83
刘大铿
前端
展开
-
leetcode 141.环形链表
解法一:快慢指针,当快指针追上慢指针说明链表是环形的时间复杂度O(N) 空间复杂度O(1)java描述:publicbooleanhasCycle(ListNodehead){if(head==null)returnfalse;ListNodewalker=head;ListNoderunner...原创 2020-03-31 00:56:41 · 179 阅读 · 0 评论 -
LeetCode 1.两数之和
这个题其实别看他简单,要实现O(n)的复杂度就有点意思了第一种解法:当然是大家都会的暴力解法时间复杂度O(n^2) 空间复杂度O(1)java描述:publicint[]twoSum(int[]nums,inttarget){int[]two=newint[2];for(inti=0;i<nums...原创 2020-03-26 00:13:09 · 429 阅读 · 0 评论 -
LeetCode 70.爬楼梯
第一种解法:斐波那契数 F(n)=F(n-1)+F(n-2)时间复杂度O(n) 空间复杂度O(1)java写法第一种:publicintclimbStairs(intn){if(n<=3){returnn;}intf1=2,f2=3,...原创 2020-03-22 22:49:22 · 259 阅读 · 0 评论 -
LeetCode 11.盛最多水的雨水(数组)
解法一:枚举(暴力破解)java描述publicintmaxArea(int[]height){intmaxNumber=0;for(inti=0;i<height.length-1;++i){for(intj=i+1;j<height.length;+...原创 2020-03-22 18:04:14 · 234 阅读 · 0 评论 -
leetcode 283.移动零
第一种解法:用空间换时间,设俩个值i,j相当于两个指针,i指向0,j指向非0,j遇到非0,将j的值赋值i,如果i与j不相等,i的值就赋予0时间复杂度 O(n) 空间复杂度O(1)java描述public void moveZeroes(int[] nums) { int j=0; for (int i=0;i<nums.length;+...原创 2020-03-21 21:50:04 · 406 阅读 · 0 评论 -
各个数的整除规则
转载自https://www.cnblogs.com/youxin/p/3219622.html各种被整除的数的特征(放在这里以备以后查阅方便) (1)被2整除的数的特征:一个整数的末位是偶数(0、2、4、6、8)的数能被2整除。 (2)被3整除的数的特征:一个整数的数字和能被3整除,则这个数能被3整除。 (3)被4整除的数的特征:一个整数的末尾两位数能被4整除则这个数能被4...转载 2019-11-18 21:12:32 · 5485 阅读 · 0 评论 -
格雷码 Java python c++ C# 解法 原理讲解
例子:以下是2位序列(n = 2) 00 01 11 10以下是3位序列(n = 3) 000 001 011 010 110 111 101 100以下是4位序列(n = 4) 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101 1111 1110 1010 1011 1001 1000 可以使用以下步骤...原创 2019-05-26 14:33:07 · 315 阅读 · 0 评论 -
图像腐蚀与膨胀(用CImage处理),使用快速处理图像灰度值
1.用快速读写进行颜色转变#include<iostream>#include<atlimage.h>usingnamespacestd;intmain(){constchar*srcFilePath = "21a.jpg", *destFilePath = "21b.jpg";CImagesrcImage;srcImage.Lo...原创 2018-08-02 11:36:20 · 750 阅读 · 2 评论 -
单链表插入,删除,查询,输出的方式
下面这个例子包含单链表的头或尾还有中间增加节点,删除节点,析构new出的空间,及其他代码。#include<iostream>#include<string>using namespace std;class Student \\student类相当于节点Node中储存数据的date{public:int id;string ...原创 2018-04-07 20:22:53 · 423 阅读 · 1 评论 -
冒泡排序原理
原理:比较两个相邻的元素,将值大的元素交换至右端。思路:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。重复第一趟步骤,直至全部排序完成。第一趟比较完成后,最后一个数一定是数组中最大的一个数,所以第二趟比较的时候最后一个数不参...原创 2018-10-14 23:05:33 · 251 阅读 · 0 评论 -
KMP算法
核心:1.当遇到不可匹配的字符的时候,我们希望找到一些规律,可以将搜索串往后多滑动几位 2.构建《部分匹配表》下面链接是阮大神的见解,写的非常棒! 字符串匹配的KMP算法...原创 2019-03-19 21:38:03 · 186 阅读 · 0 评论