3.无重复字符的最长子串

/**
* @param {string} s
* @return {number}
*/
var lengthOfLongestSubstring = function(s) {
var ans = [], vis = [], max = 0;
for(var i = 0; i < 256; i++){
vis.push(-1);
}
for(var i = 0; i < s.length; i++){
var t = s[i].charCodeAt() - 0;
if(vis[t] == -1){
vis[t] = i;
ans.push(s[i]);
if(ans.length > max){
max = ans.length;
}
}
else{
var pos = ans.indexOf(s[i]);
for(var j = pos - 1; j >= 0; j--){
vis[ans[j].charCodeAt() - 0] = -1;
}
ans = ans.slice(pos + 1);
ans.push(s[i]);
vis[t] = i;
}
}
return max;
};

4. 寻找两个有序数组的中位数

/**
* @param {number[]} nums1
* @param {number[]} nums2
* @return {number}
*/
var findMedianSortedArrays = function(nums1, nums2) {
if(nums1.length > nums2.length){
var t = nums1;
nums1 = nums2;
nums2 = t;
}
var len = nums1.length + nums2.length;
function find(k,nums1,nums2){
var ans = null;
while(ans === null){
if(k % 2 == 1){
x = Math.floor(k / 2);
if(x == 0)
x = 1;
}else{
x = k / 2;
}
var flag = false;
var temp = [];
if(nums1.length == 0 && nums2.length != 0){
temp = nums2.slice(0,k);
k = 0;
}else if(nums2.length == 0){
temp = nums1.slice(0,k);
k = 0;
}else if(nums1.length < x){
if(nums1[nums1.length - 1] < nums2[x - 1]){
k -= nums1.length;
temp = nums1.slice();
nums1 = [];
}else{
k -= x;
temp = nums2.slice(0,x);
nums2 = nums2.slice(x);
}
}else{
k -= x;
if(nums1[x - 1] < nums2[x - 1]){
temp = nums1.slice(0,x);
nums1 = nums1.slice(x);
}else{
temp = nums2.slice(0,x);
nums2 = nums2.slice(x);
}
}
if(!k){
ans = temp[temp.length - 1];
}
}
return ans;
}
if(len % 2){
return find((len + 1) / 2,nums1,nums2);
}else{
return (function(){
var x1 = nums1.slice(),x2 = nums2.slice();
var sum = find(len / 2,nums1,nums2);
nums1 = x1;
nums2 = x2;
sum += find((len / 2 + 1),nums1,nums2);
return sum / 2;
})();
}
};

Leetcode部分题目整理(Javascript)的更多相关文章

  1. Noip往年题目整理

    Noip往年题目整理 张炳琪 一.历年题目 按时间倒序排序 年份 T1知识点 T2知识点 T3知识点 得分 总体 2016day1 模拟 Lca,树上差分 期望dp 144 挺难的一套题目,偏思维难度 ...

  2. LeetCode高频题目(100)汇总-Java实现

    LeetCode高频题目(100)汇总-Java实现       LeetCode高频题目(100)汇总-Java实现 目录 第01-50题 [Leetcode-easy-1] Two Sum [Le ...

  3. LeetCode算法题目解答汇总(转自四火的唠叨)

    LeetCode算法题目解答汇总 本文转自<四火的唠叨> 只要不是特别忙或者特别不方便,最近一直保持着每天做几道算法题的规律,到后来随着难度的增加,每天做的题目越来越少.我的初衷就是练习, ...

  4. LeetCode SQL题目(第一弹)

    LeetCode SQL题目 注意:Leetcode上的SQL编程题都提供了数据表的架构程序,只需要将它贴入本地数据库即可调试自己编写的程序 不管是MS-SQL Server还是MySQL都需要登陆才 ...

  5. LeetCode题库整理(自学整理)

    1. Two Sum 两数之和       来源:力扣(LeetCode) 题目:给定一个整数数组和一个目标值,找出数组中和为目标值的两个数.你可以假设每个输入只对应一种答案,且同样的元素不能被重复利 ...

  6. NOIp初赛题目整理

    NOIp初赛题目整理 这个 blog 用来整理扶苏准备第一轮 csp 时所做的与 csp 没 有 关 系 的历年 noip-J/S 初赛题目,记录了一些我从不知道的细碎知识点,还有一些憨憨题目,不定期 ...

  7. leetcode二叉树题目总结

    leetcode二叉树题目总结 题目链接:https://leetcode-cn.com/leetbook/detail/data-structure-binary-tree/ 前序遍历(NLR) p ...

  8. Leetcode 题目整理 climbing stairs

    You are climbing a stair case. It takes n steps to reach to the top. Each time you can either climb ...

  9. Leetcode 题目整理-3 Palindrome Number & Roman to Integer

    9. Palindrome Number Determine whether an integer is a palindrome. Do this without extra space. clic ...

随机推荐

  1. HTTPS 简单学习

    1. HTTP缺点 使用明文通信,内容可能会被窃听: 通信加密:使用SSL和TLS: 内容加密: 不验证通信方的身份,因此可能会遭到伪装: SSL提供加密和证书: 无法证明报文的完整性,因此会遭到修改 ...

  2. 洛谷P4779 【模板】单源最短路径

    P4779 [模板]单源最短路径(标准版) 题目链接 https://www.luogu.org/problemnew/show/P4779 题目描述 给定一个 N个点,M条有向边的带非负权图,请你计 ...

  3. docker 入门3 - 服务 【翻译】

    入门,第 3 部分:服务 先决条件 安装 Docker 版本 1.13 或更高版本. 获取 Docker Compose.在适用于 Mac 和 Docker 桌面的 Windows 上,它已预安装,因 ...

  4. python3 多线程 采集 xpath

    #!/usr/bin/python # -*- coding: UTF-8 -*- '''Thread3 多线程测试采集''' import threading,time,queue,Mongo_ut ...

  5. Django rest-framework框架-CSRF验证

    settings.py里面有一个中间件 django.middleware.csrf.CsrfViewmiddleware  #如果注释掉全站不需要csrf验证  如果打开全站都要csrf验证 全局使 ...

  6. MySQL下载安装图文

    一. MySQL下载 1. 进入MySQL官网官网地址:https://www.mysql.com/ 2. 点击DOWNLOADS 3. 点击Community(GPL) Downloads 4. 找 ...

  7. oracel数据泵导出导入

    Oracle11g 使用数据泵导入/导出数据 expdp/impdp 目标:使用oracle数据泵,将A电脑上的数据库databaseA导出后,再导入到B电脑上的数据库databaseB中. A电脑上 ...

  8. OpenCV入门学习资料汇总

    OpenCV学习文档资料 OpenCV学习:1)OpenCV中文网站——http://wiki.opencv.org.cn/index.php/%E9%A6%96%E9%A1%B5 2)python实 ...

  9. DB2 alter 新增/删除/修改列

    SQL语句 增加列.修改列.删除列 1 添加字段 语法 : alter table 表名称 add 字段名称 类型 demo: alter table tableName add columnName ...

  10. Delphi 定义线程对象