168. Excel表列名称

var convertToTitle = function(columnNumber) {
let str = ''
let n = columnNumber
while (n) {
let y = n % 26 // 从后往前取余
n = n / 26 | 0 // 除以26并且向下取整
y || n-- // 余数为0 ,n--
str = String.fromCharCode(64 + (y || 26)) + str
}
return str
};

171. Excel 表列序号

var titleToNumber = function(columnTitle) {
let result = 0;
let s = columnTitle;
for (let i = 0, len = s.length; i < len; i++) {
result += (s[i].charCodeAt() - 64) * 26 ** (len - i - 1);
}
return result;
};

190. 颠倒二进制位

var reverseBits = function(n) {
return parseInt((n).toString(2).padStart(32, '0').split('').reverse().join(''), 2)
};

205. 同构字符串

var isIsomorphic = function(s, t) {
let sMap = {}
let tMap = {}
for (let i = 0; i < s.length; i++) {
if (sMap[s[i]] !== tMap[t[i]]) return false
sMap[s[i]] = i
tMap[t[i]] = i
}
return true
};

228. 汇总区间

var summaryRanges = function(nums) {
if (nums.length == 0) return [] let left = 0,
right = 0
let res = []
for (let i = 0; i < nums.length; i++) {
if (nums[i] + 1 === nums[i + 1]) {
right++
} else {
res.push(left === right ? `${nums[i]}` : `${nums[left]} -> ${nums[right]}`)
left = i + 1
right = i + 1
}
}
return res
};

448. 找到所有数组中消失的数字

var findDisappearedNumbers = function(nums) {
var res = []
for (let i = 1; i <= nums.length; i++) {
if (nums.indexOf(i) === -1) {
res.push(i)
}
}
return res
};

461. 汉明距离

var hammingDistance = function(x, y) {
var binX = x.toString(2)
var binY = y.toString(2)
var len = binX.length > binY.length ? binX.length : binY.length
binX = binX.padStart(len, '0')
binY = binY.padStart(len, '0')
var disCount = 0
for (let i = 0; i < len; i++) {
if (binX[i] !== binY[i]) {
disCount++
} }
return disCount
};

876. 链表的中间结点

var middleNode = function(head) {
let slow = head
let fast = head
while (fast !== null && fast.next !== null) {
slow = slow.next
fast = fast.next.next
}
return slow
};

836. 矩形重叠

var isRectangleOverlap = function(rec1, rec2) {
if (rec1[0] >= rec2[2] || rec1[2] <= rec2[0] || rec1[1] >= rec2[3] || rec1[3] <= rec2[1]) {
return false
}
return true };

844. 比较含退格的字符串

var backspaceCompare = function(s, t) {
let i = s.length - 1
let j = t.length - 1
let backSpaceS = 0
let backSpaceT = 0 while (i >= 0 || j >= 0) {
while (i >= 0) {
if (s[i] == '#') {
backSpaceS++
i--
} else if (backSpaceS > 0) {
backSpaceS--
i--
} else {
break
}
}
while (j >= 0) {
if (t[j] == '#') {
backSpaceT++
j--
} else if (backSpaceT > 0) {
backSpaceT--
j--
} else {
break
}
}
if (s[i] !== t[j]) {
return false
}
i--
j--
}
return true
};

leetcode简单(数组,字符串,链表):[168, 171, 190, 205, 228, 448, 461, 876, 836, 844]的更多相关文章

  1. redis底层数据结构--简单动态字符串 链表 字典 跳跃表 整数集合 压缩列表

    1.动态字符串 redis中使用c语言的字符床存储字面量,默认字符串存储采用自己构建的简单动态字符串SDS(symple dynamic string) redis包含字符串的键值对都是用SDS实现的 ...

  2. 【redis】redis底层数据结构原理--简单动态字符串 链表 字典 跳跃表 整数集合 压缩列表等

    redis有五种数据类型string.list.hash.set.zset(字符串.哈希.列表.集合.有序集合)并且自实现了简单动态字符串.双端链表.字典.压缩列表.整数集合.跳跃表等数据结构.red ...

  3. LeetCode 简单 -旋转字符串(796)

    给定两个字符串, A 和 B. A 的旋转操作就是将 A 最左边的字符移动到最右边. 例如, 若 A = 'abcde',在移动一次之后结果就是'bcdea' .如果在若干次旋转操作之后,A 能变成B ...

  4. redis 笔记01 简单动态字符串、链表、字典、跳跃表、整数集合、压缩列表

    文中内容摘自<redis设计与实现> 简单动态字符串 1. Redis只会使用C字符串作为字面量,在大多数情况下,Redis使用SDS(Simple Dynamic String,简单动态 ...

  5. [Java]字符串数组 与 字符串链表 之间的相互转化

    代码: package com.hy; import java.util.Arrays; import java.util.Collections; import java.util.List; pu ...

  6. 【leetcode 206】 反转链表(简单)

    链表 概念: 区别于数组,链表中的元素不是存储在内存中连续的一片区域,链表中的数据存储在每一个称之为「结点」复合区域里,在每一个结点除了存储数据以外,还保存了到下一个结点的指针(Pointer). 由 ...

  7. Redis 数据结构-简单动态字符串

    Redis 数据结构-简单动态字符串 无边落木萧萧下,不尽长江滚滚来. 1.简介 Redis 之所以快主要得益于它的数据结构.操作内存数据库.单线程和多路 I/O 复用模型,进一步窥探下它常见的五种基 ...

  8. 图解Redis之数据结构篇——简单动态字符串SDS

    图解Redis之数据结构篇--简单动态字符串SDS 前言     相信用过Redis的人都知道,Redis提供了一个逻辑上的对象系统构建了一个键值对数据库以供客户端用户使用.这个对象系统包括字符串对象 ...

  9. Redis底层探秘(一):简单动态字符串(SDS)

    redis是我们使用非常多的一种缓存技术,他的性能极高,读的速度是110000次/s,写的速度是81000次/s.这么高的性能背后,到底是怎么样的实现在支撑,这个系列的文章,我们一起去看看. redi ...

  10. LeetCode 61:旋转链表 Rotate List

    ​给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数. Given a linked list, rotate the list to the right by k pla ...

随机推荐

  1. kubernetes运行应用Controller3之Job、CronJob详解

    成功启动一个Job 1.Job.spec.template.metadata,没有空格符的错误 [machangwei@mcwk8s-master ~]$ cat mcwJob1.yml apiVer ...

  2. winform 绘图控件 chart 实时曲线图

    官方教程:http:////files.cnblogs.com/files/HelloQLQ/Winform图表.rar 更多参考:https://blog.csdn.net/boxuming/art ...

  3. 如何启动?win11下的Linux子系统【4种方法】

    实验室的开发环境在Linux操作系统下,时不时就需要打开Linux环境去操作,而且需要本地编译或者远程SSH.这时候window和Linux切换很不方便.本科的做法就是window+虚拟机的Linux ...

  4. Swoole 源码分析之 WebSocket 模块

    首发原文链接:Swoole 源码分析之 WebSocket 模块 大家好,我是码农先森. Swoole 源码分析之 WebSocket 模块 引言 WebSocket 是一种在单个 TCP 连接上进行 ...

  5. django中的多表关联

    一.三种关联情况 二.ORM的正向操作和反向操作 1.正向操作: 一个模型中定义了一个外键,通过该模型对该外键操作的操作叫做正向操作. 2.反向操作: 被外键所关联的模型,通过该模型对外键所在模型的操 ...

  6. 【2023全网最全最火】Selenium WebDriver教程(建议收藏)

    在本教程中,我将向您介绍 Selenium Webdriver,它是当今市场上使用最广泛的自动化测试框架.它是开源的,可与所有著名的编程语言(如Java.Python.C#.Ruby.Perl等)一起 ...

  7. AI实用技巧 | 5分钟将coze集成到微信群机器人

    细心的小伙伴已经注意到,国内的Coze平台已经开放了API,这一发现让他们感到兴奋不已.因此,他们迫切地想要掌握这一机会,将API应用到实际中,让Coze成为他们的得力助手.这样一来,他们就可以避免每 ...

  8. kubernetes使用metrics-server进行资源监控

    kubernetes资源监控 1. 查看集群资源状况 ·k8s集群的master节点一般不会跑业务容器· kubectl get cs #查看master资源状态 kubectl get node # ...

  9. FLV 分析脚本

    一.需求 通过脚本,可以检查本地flv文件格式是否正确,可以打印每个Tag中的二进制内容 二.效果 可以看到VideoTag中开始处增加了一段SEI数据,并且可以看到部分字段,gameid.time. ...

  10. uview 滑动切换

    ```html <template> <view class="content"> <!-- <u-row justify="spac ...