- LeetCode //C - 650. 2 Keys Keyboard
Navigator_Z
LeetCodeleetcodec语言算法
650.2KeysKeyboardThereisonlyonecharacter‘A’onthescreenofanotepad.Youcanperformoneoftwooperationsonthisnotepadforeachstep:CopyAll:Youcancopyallthecharacterspresentonthescreen(apartialcopyisnotallowed).
- leetcode560.和为k的子数组
ゞ 正在缓冲99%…
前缀和哈希表leetcode
前缀和+哈希表classSolution{public:intsubarraySum(vector&nums,intk){intresult=0;intpre=0;unordered_mapmap;map[0]=1;//模拟测试用例1[1,1,1],k=2可知for(constint&num:nums){pre+=num;if(map.find(pre-k)!=map.end())result+=
- 【力扣题解】32. 最长有效括号
JordanPanther
算法动态规划算法
【题目设置】:难度:困难链接:https://leetcode-cn.com/problems/longest-valid-parentheses题目描述:给你一个只包含‘(’和‘)’的字符串,找出最长有效(格式正确且连续)括号子串的长度。示例1:输入:s="(()"输出:2解释:最长有效括号子串是"()"示例2:输入:s=")()())"输出:4解释:最长有效括号子串是"()()"示例3:输入:
- Java 算法入门:动态规划和二叉树
来自星星的坤
算法java动态规划
在学习算法的路上,难免会遇到一些概念和题目让你感到困惑。今天,我们来讲解leetcode上两个非常基础但又十分重要的算法题。这两道题既是入门的好题目,也能帮助你理解一些常见的算法思维。让我们一起来探讨一下:动态规划和二叉树。LeetCode70题:爬楼梯问题问题描述想象一下,你正站在一个楼梯的底部,需要爬到楼顶。楼梯共有n阶,每次你可以选择爬1阶或2阶。现在,你需要计算出有多少种不同的方式可以到达
- leetcode40-组合总和II
记得早睡~
算法小课堂leetcode数据结构javascript算法
leetcode40思路在做本题之前可以参考之前的文章:组合总和和组合总和III本题的关键点是:每个元素只能使用一次,另外本题给的数组是无序的,并且元素之间可能存在重复项,举个例子,candidates=[1,2,1,1],这种可能性存在,所以本题的关键在于去重假设candidates=[1,2,1,1],target=3可能的情况是:[1,2],[1,1,1]也就是说元素每个元素1都是一个单独的
- 机器人能否回到原点 - 简单
ElseWhereR
leetcodec++算法
*************C++topic:657.机器人能否返回原点-力扣(LeetCode)*************inspectthetopicveryfirst.Itisletterstodecidewhichsidetherobotmoves.Andmythoughtisquitesample.Assumeingtherobotcanmovebacktotheorigin,thenth
- javascript 力扣leetcode hot100题解
大踩踩
javascriptleetcode开发语言
1、两数之和点评:最初的梦想vartwoSum=function(nums,target){letmap=newMap();letresult=[];for(leti=0;ia-b);letlen=1;letmax=1;letdp=nums[0];for(leti=1;ia-b);letresult=[];for(leti=0;iheight[st[st.length-1]]){//注意这里是wh
- java人员安排表_Java实现 LeetCode 732 我的日程安排表 III(暴力 || 二叉树)
网络小侦探
java人员安排表
732.我的日程安排表III实现一个MyCalendar类来存放你的日程安排,你可以一直添加新的日程安排。MyCalendar有一个book(intstart,intend)方法。它意味着在start到end时间内增加一个日程安排,注意,这里的时间是半开区间,即[start,end),实数x的范围为,start();}publicintbook(intstart,intend){//添加至日程中c
- leetcode刷题(javaScript)——数组相关场景题总结
三月的一天
Leetcode刷题技巧总结算法
数组只是一种数据结构,通常结合其他算法场景出现。这里总结几类在LeetCode刷题时,针对数组相关的场景题,可以使用以下技巧和方法:双指针法:快慢指针用于解决数组中的有序问题,如移除重复项、找出唯一元素等。左右指针用于解决数组中的对撞问题,如两数之和、接雨水等。排序:对数组进行排序可以简化很多问题,如对数组进行排序后,可以更容易地解决部分排序问题。哈希表:使用对象字面量或Map结构存储键值对,可以
- 用Js怒刷LeetCode
hellocoder2028
leetcodejavascript
简介文中所有题目均为精心挑选过的超高频题目,所以大家可以收藏起来适用人群针对有一定数据结构基础(了解链表,二叉树,二叉堆,递归)的基本概念,并对时间空间复杂度有基本认知的。食用指南将文中列出的每道题至少手写3遍面试前可以按照本文整理出来的题目直接过一遍说明文章更新频率:除休息日外,每天在题目下方更新一道题的题解有LeetCode原题的将贴上原地址,不在文章内做题目描述Tc:Timecomplexi
- 算法:矩阵对角线元素的和
从bug中生存下来的IT小白
算法算法leetcode
leetcode矩阵对角线元素的和一个正方形矩阵,求对角线元素的和代码:intdiagonalSum(int**mat,intmatSize,int*matColSize){intsum=0;for(inti=0;i
- 力扣刷题Day 3 | 203.移除链表元素,707.设计链表,206.反转链表
Present*
算法刷题算法leetcodepython
203.移除链表元素题目链接力扣(LeetCode)官网-全球极客挚爱的技术成长平台视频讲解手把手带你学会操作链表|LeetCode:203.移除链表元素_哔哩哔哩_bilibili笔记移除链表元素要分两种情况,一是要移除的元素为头节点,二是要移除的元素为非头节点。为了简化代码,定义一个虚拟头节点dummy_head=ListNode(next=head)遍历从dummy_head开始,由于最后要
- LeetCode第109题_有序链表转换二叉搜索树
@蓝莓果粒茶
算法leetcode链表算法数据结构c++pythonc#
LeetCode第109题:有序链表转换二叉搜索树题目描述给定一个单链表的头节点head,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点的左右两个子树的高度差的绝对值不超过1。难度中等题目链接点击在LeetCode中查看题目示例示例1:输入:head=[-10,-3,0,5,9]输出:[0,-3,9,-10,null,5]解释:一个可能的答案
- python-leetcode-704. 二分查找
Joyner2018
leetcode算法职场和发展
704.二分查找-力扣(LeetCode)可以使用二分查找来实现这个功能,时间复杂度为O(logn)。下面是Python代码:defbinary_search(nums,target):left,right=0,len(nums)-1whilelefttarget,说明target在左半部分,调整right=mid-1。继续循环,直到left>right,如果未找到目标值,返回-1。这种方法在有序
- 解题思路:LeetCode 2711. 对角线上不同值的数量差
迪小莫学AI
每日算法leetcode算法职场和发展
解题思路:LeetCode2711.对角线上不同值的数量差在LeetCode的题目2711中,我们需要计算一个矩阵中每个单元格的左上角对角线和右下角对角线上不同值的数量差。这个问题可以通过暴力法解决,但效率较低。本文将介绍一种更高效的解决方案,并通过Python代码实现。问题描述给定一个大小为mxn的二维矩阵grid,我们需要求解一个新的答案矩阵answer,其中每个单元格(r,c)的值是该单元格
- 【leetcode hot 100 215】数组中的第K个最大元素
longii11
leetcode算法java
解法一:维护最大最小值->堆->k个元素的最小值堆classSolution{publicintfindKthLargest(int[]nums,intk){//维护最大最小值->堆->k个元素的最小值堆PriorityQueueheap=newPriorityQueuen1-n2);for(inti=0;ik){//维护k个元素的最小值堆heap.poll();}}returnheap.peek
- 代码随想录算法训练营day24: 122.买卖股票的最佳时机II & 55. 跳跃游戏 & 45.跳跃游戏II & 1005.K次取反后最大化的数组和
胡某在路上
贪心算法数据结构
122.买卖股票的最佳时机II122.买卖股票的最佳时机II-力扣(LeetCode)这道题需要仔细思考后就能想到我们需要收集每天的正利润就可以,收集正利润的区间,就是股票买卖的区间,而我们只需要关注最终利润,不需要记录区间。classSolution{public:intmaxProfit(vector&prices){intresult=0;for(inti=1;i&nums){intcove
- Day28 买卖股票的最佳时机 跳跃游戏 跳跃游戏 II K 次取反后最大化的数组和
落叶过河
代码随想录算法打卡算法数据结构贪心算法java
贪心算法part02122.买卖股票的最佳时机II-力扣(LeetCode)求最大利润将每天的正利润加和publicintmaxProfit(int[]prices){inttotalPrices=0;for(inti=0;iprices[i]){totalPrices+=prices[i+1]-prices[i];}}returntotalPrices;}55.跳跃游戏-力扣(LeetCode)
- 链表使用基础——如何创建链表
榛果咖啡有点苦
链表
链表使用基础——如何创建链表前言leetcode题2两数相加已知两个非空链表,表示两个非负整数,每位数字都是按照逆序方式存储,每个节点存储一位数字将这两个数相加,并以相同形式返回一个表示和的链表假设:除了数字0以外,这两个数不会以0开头示例:建立结果链表structListNode*addTwoNumbers(structListNode*l1,structListNode*l2){intadd=
- 代码随想录算法训练营第二十五天 | 491. 非递减子序列、46. 全排列、47.全排列 II、332. 重新安排行程、51. N 皇后、37. 解数独
榛果咖啡有点苦
代码随想录算法训练营算法
491.非递减子序列题目链接:https://leetcode.cn/problems/non-decreasing-subsequences/description/文档讲解:https://programmercarl.com/0491.%E9%80%92%E5%A2%9E%E5%AD%90%E5%BA%8F%E5%88%97.html状态:已完成思路:本题考察的是在无序数组中可能有重复元素的
- 代码随想录算法训练营第三十六天 | 1049. 最后一块石头的重量 II、494. 目标和、474. 一和零
榛果咖啡有点苦
代码随想录算法训练营算法
1049.最后一块石头的重量II(*)题目链接:https://leetcode.cn/problems/last-stone-weight-ii/文档讲解:https://programmercarl.com/1049.%E6%9C%80%E5%90%8E%E4%B8%80%E5%9D%97%E7%9F%B3%E5%A4%B4%E7%9A%84%E9%87%8D%E9%87%8FII.html状
- 高频SQL50题 第四天 | 1251. 平均售价、620. 有趣的电影、1075. 项目员工 I、1633. 各赛事的用户注册率
榛果咖啡有点苦
高频SQL50题mysql
知识点导览:日期大小比较;ifnull(字段,默认值)函数;取余操作;字符串比较like;逆序desc1251.平均售价题目链接:https://leetcode.cn/problems/average-selling-price/description/?envType=study-plan-v2&envId=sql-free-50状态:已完成考点:判断日期是否位于某个区间内,可以使用>=>=>
- 【LeetCode 热题100】 4. 寻找两个正序数组的中位数的算法思路及python代码
pljnb
LeetCode热题100算法leetcodepython
4.寻找两个正序数组的中位数给定两个大小分别为mmm和nnn的正序(从小到大)数组nums1和nums2。请你找出并返回这两个正序数组的中位数。算法的时间复杂度应该为O(log(m+n))O(log(m+n))O(log(m+n))。示例1:输入:nums1=[1,3],nums2=[2]输出:2.00000解释:合并数组=[1,2,3],中位数2示例2:输入:nums1=[1,2],nums2=
- 【LeetCode 876】链表的中间结点
菜鸭子
LeetCode算法LeetCode链表
题目描述:给定一个带有头结点head的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。示例1:输入:[1,2,3,4,5]输出:此列表中的结点3(序列化形式:[3,4,5])返回的结点值为3。(测评系统对该结点序列化表述是[3,4,5])。注意,我们返回了一个ListNode类型的对象ans,这样:ans.val=3,ans.next.val=4,ans.next.nex
- Leetcode 刷题笔记1 图论part01
平乐君
leetcode笔记图论
图论的基础知识:图的种类:有向图(边有方向)、无向图(边无方向)、加权有向图(边有方向和权值)度:无向图中几条边连接该节点,该节点就有几度;有向图中每个节点有入度和出度连通性:在无向图中,任何两个节点都是可以到达的,称之为连通图,否则称之为非连通图在有向图中,热河两个节点是可以相互到达的,称之为强连通图联通分量:在无向图中的极大连通子图称之为该图的一个连通分量强连通分量:有向图中极大强连通子图称之
- Leetcode刷题笔记1 图论part03
平乐君
leetcode笔记图论
卡码网101孤岛总面积fromcollectionsimportdequedirections=[[0,1],[1,0],[0,-1],[-1,0]]count=0defmain():globalcountn,m=map(int,input().split())grid=[]for_inrange(n):grid.append(list(map(int,input().split())))fori
- 二叉树练习
无敌粉毛大王千早爱音
力扣
102.二叉树的层序遍历-力扣(LeetCode)使用队列进行层序遍历。/***Definitionforabinarytreenode.*publicclassTreeNode{*intval;*TreeNodeleft;*TreeNoderight;*TreeNode(){}*TreeNode(intval){this.val=val;}*TreeNode(intval,TreeNodelef
- 最长回文子串(暴力枚举、动态规划、中心扩展,leetcode刷题记录)
g-zh
LeetCode刷题记录动态规划leetcode算法
5.最长回文子串给你一个字符串s,找到s中最长的回文子串。示例1:输入:s="babad"输出:"bab"解释:"aba"同样是符合题意的答案。示例2:输入:s="cbbd"输出:"bb"提示:1maxLen&&isPalindrome(s,i,j)){//更新最长回文子串的起始位置和长度maxLen=currLen;start=i;}}}//返回最长回文子串returns.substr(star
- leetcode 20.有效括号
ranzhiyimu
leetcodepython算法
20.有效的括号-力扣(LeetCode)classSolution:defisValid(self,s:str)->bool:stack=[]foriins:ifiin('(','{','['):stack.append(i)elifiin(')'):#这种情况是栈弹出元素为空时候,右半部分的括号多出来一些比如:[()]}ifnotstack:returnFalsetemp=stack.pop(
- 代码训练营 day34|LeetCode 134,LeetCode 135,LeetCode 860,LeetCode 406
西几
代码训练营刷题记录leetcode算法c++
前言这里记录一下陈菜菜的刷题记录,主要应对25秋招、春招个人背景211CS本+CUHK计算机相关硕,一年车企软件开发经验代码能力:有待提高常用语言:C++系列文章目录第34天:第七章回溯算法part03`文章目录前言系列文章目录第34天:第七章回溯算法part03一、今日任务二、详细布置134.加油站提示:样例1:思路实战135.分发糖果提示:样例1:思路实战踩坑860.柠檬水找零提示:样例1:样
- java杨辉三角
3213213333332132
java基础
package com.algorithm;
/**
* @Description 杨辉三角
* @author FuJianyong
* 2015-1-22上午10:10:59
*/
public class YangHui {
public static void main(String[] args) {
//初始化二维数组长度
int[][] y
- 《大话重构》之大布局的辛酸历史
白糖_
重构
《大话重构》中提到“大布局你伤不起”,如果企图重构一个陈旧的大型系统是有非常大的风险,重构不是想象中那么简单。我目前所在公司正好对产品做了一次“大布局重构”,下面我就分享这个“大布局”项目经验给大家。
背景
公司专注于企业级管理产品软件,企业有大中小之分,在2000年初公司用JSP/Servlet开发了一套针对中
- 电驴链接在线视频播放源码
dubinwei
源码电驴播放器视频ed2k
本项目是个搜索电驴(ed2k)链接的应用,借助于磁力视频播放器(官网:
http://loveandroid.duapp.com/ 开放平台),可以实现在线播放视频,也可以用迅雷或者其他下载工具下载。
项目源码:
http://git.oschina.net/svo/Emule,动态更新。也可从附件中下载。
项目源码依赖于两个库项目,库项目一链接:
http://git.oschina.
- Javascript中函数的toString()方法
周凡杨
JavaScriptjstoStringfunctionobject
简述
The toString() method returns a string representing the source code of the function.
简译之,Javascript的toString()方法返回一个代表函数源代码的字符串。
句法
function.
- struts处理自定义异常
g21121
struts
很多时候我们会用到自定义异常来表示特定的错误情况,自定义异常比较简单,只要分清是运行时异常还是非运行时异常即可,运行时异常不需要捕获,继承自RuntimeException,是由容器自己抛出,例如空指针异常。
非运行时异常继承自Exception,在抛出后需要捕获,例如文件未找到异常。
此处我们用的是非运行时异常,首先定义一个异常LoginException:
/**
* 类描述:登录相
- Linux中find常见用法示例
510888780
linux
Linux中find常见用法示例
·find path -option [ -print ] [ -exec -ok command ] {} \;
find命令的参数;
- SpringMVC的各种参数绑定方式
Harry642
springMVC绑定表单
1. 基本数据类型(以int为例,其他类似):
Controller代码:
@RequestMapping("saysth.do")
public void test(int count) {
}
表单代码:
<form action="saysth.do" method="post&q
- Java 获取Oracle ROWID
aijuans
javaoracle
A ROWID is an identification tag unique for each row of an Oracle Database table. The ROWID can be thought of as a virtual column, containing the ID for each row.
The oracle.sql.ROWID class i
- java获取方法的参数名
antlove
javajdkparametermethodreflect
reflect.ClassInformationUtil.java
package reflect;
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;
import javassist.Modifier;
import javassist.bytecode.CodeAtt
- JAVA正则表达式匹配 查找 替换 提取操作
百合不是茶
java正则表达式替换提取查找
正则表达式的查找;主要是用到String类中的split();
String str;
str.split();方法中传入按照什么规则截取,返回一个String数组
常见的截取规则:
str.split("\\.")按照.来截取
str.
- Java中equals()与hashCode()方法详解
bijian1013
javasetequals()hashCode()
一.equals()方法详解
equals()方法在object类中定义如下:
public boolean equals(Object obj) {
return (this == obj);
}
很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、I
- 精通Oracle10编程SQL(4)使用SQL语句
bijian1013
oracle数据库plsql
--工资级别表
create table SALGRADE
(
GRADE NUMBER(10),
LOSAL NUMBER(10,2),
HISAL NUMBER(10,2)
)
insert into SALGRADE values(1,0,100);
insert into SALGRADE values(2,100,200);
inser
- 【Nginx二】Nginx作为静态文件HTTP服务器
bit1129
HTTP服务器
Nginx作为静态文件HTTP服务器
在本地系统中创建/data/www目录,存放html文件(包括index.html)
创建/data/images目录,存放imags图片
在主配置文件中添加http指令
http {
server {
listen 80;
server_name
- kafka获得最新partition offset
blackproof
kafkapartitionoffset最新
kafka获得partition下标,需要用到kafka的simpleconsumer
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.
- centos 7安装docker两种方式
ronin47
第一种是采用yum 方式
yum install -y docker
- java-60-在O(1)时间删除链表结点
bylijinnan
java
public class DeleteNode_O1_Time {
/**
* Q 60 在O(1)时间删除链表结点
* 给定链表的头指针和一个结点指针(!!),在O(1)时间删除该结点
*
* Assume the list is:
* head->...->nodeToDelete->mNode->nNode->..
- nginx利用proxy_cache来缓存文件
cfyme
cache
user zhangy users;
worker_processes 10;
error_log /var/vlogs/nginx_error.log crit;
pid /var/vlogs/nginx.pid;
#Specifies the value for ma
- [JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题
comsci
嵌入式
假如我们需要用JWFD的语法分析模块定义一个带负号的方程式,直接在方程式之前添加负号是不正确的,而必须这样做:
string str01 = "a=3.14;b=2.71;c=0;c-((a*a)+(b*b))"
定义一个0整数c,然后用这个整数c去
- 如何集成支付宝官方文档
dai_lm
android
官方文档下载地址
https://b.alipay.com/order/productDetail.htm?productId=2012120700377310&tabId=4#ps-tabinfo-hash
集成的必要条件
1. 需要有自己的Server接收支付宝的消息
2. 需要先制作app,然后提交支付宝审核,通过后才能集成
调试的时候估计会真的扣款,请注意
- 应该在什么时候使用Hadoop
datamachine
hadoop
原帖地址:http://blog.chinaunix.net/uid-301743-id-3925358.html
存档,某些观点与我不谋而合,过度技术化不可取,且hadoop并非万能。
--------------------------------------------万能的分割线--------------------------------
有人问我,“你在大数据和Hado
- 在GridView中对于有外键的字段使用关联模型进行搜索和排序
dcj3sjt126com
yii
在GridView中使用关联模型进行搜索和排序
首先我们有两个模型它们直接有关联:
class Author extends CActiveRecord {
...
}
class Post extends CActiveRecord {
...
function relations() {
return array(
'
- 使用NSString 的格式化大全
dcj3sjt126com
Objective-C
格式定义The format specifiers supported by the NSString formatting methods and CFString formatting functions follow the IEEE printf specification; the specifiers are summarized in Table 1. Note that you c
- 使用activeX插件对象object滚动有重影
蕃薯耀
activeX插件滚动有重影
使用activeX插件对象object滚动有重影 <object style="width:0;" id="abc" classid="CLSID:D3E3970F-2927-9680-BBB4-5D0889909DF6" codebase="activex/OAX339.CAB#
- SpringMVC4零配置
hanqunfeng
springmvc4
基于Servlet3.0规范和SpringMVC4注解式配置方式,实现零xml配置,弄了个小demo,供交流讨论。
项目说明如下:
1.db.sql是项目中用到的表,数据库使用的是oracle11g
2.该项目使用mvn进行管理,私服为自搭建nexus,项目只用到一个第三方 jar,就是oracle的驱动;
3.默认项目为零配置启动,如果需要更改启动方式,请
- 《开源框架那点事儿16》:缓存相关代码的演变
j2eetop
开源框架
问题引入
上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。
该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。
当然去看相关实现代代码的时候,大致是下面的样子。
[java]
view plain
copy
print
?
public vo
- AngularJS浅析
kvhur
JavaScript
概念
AngularJS is a structural framework for dynamic web apps.
了解更多详情请见原文链接:http://www.gbtags.com/gb/share/5726.htm
Directive
扩展html,给html添加声明语句,以便实现自己的需求。对于页面中html元素以ng为前缀的属性名称,ng是angular的命名空间
- 架构师之jdk的bug排查(一)---------------split的点号陷阱
nannan408
split
1.前言.
jdk1.6的lang包的split方法是有bug的,它不能有效识别A.b.c这种类型,导致截取长度始终是0.而对于其他字符,则无此问题.不知道官方有没有修复这个bug.
2.代码
String[] paths = "object.object2.prop11".split("'");
System.ou
- 如何对10亿数据量级的mongoDB作高效的全表扫描
quentinXXZ
mongodb
本文链接:
http://quentinXXZ.iteye.com/blog/2149440
一、正常情况下,不应该有这种需求
首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。
说一下,
- C语言算法之水仙花数
qiufeihu
c算法
/**
* 水仙花数
*/
#include <stdio.h>
#define N 10
int main()
{
int x,y,z;
for(x=1;x<=N;x++)
for(y=0;y<=N;y++)
for(z=0;z<=N;z++)
if(x*100+y*10+z == x*x*x
- JSP指令
wyzuomumu
jsp
jsp指令的一般语法格式: <%@ 指令名 属性 =”值 ” %>
常用的三种指令: page,include,taglib
page指令语法形式: <%@ page 属性 1=”值 1” 属性 2=”值 2”%>
include指令语法形式: <%@include file=”relative url”%> (jsp可以通过 include