数据结构和算法
攻城匠
终将富有~
展开
-
[LintCode] 有效的括号序列 - JS
描述给定一个字符串所表示的括号序列,包含以下字符: ‘(‘, ‘)’, ‘{‘, ‘}’, ‘[’ and ‘]’, 判定是否是有效的括号序列。样例括号必须依照 “()” 顺序表示, “()[]{}” 是有效的括号,但 “([)]”则是无效的括号。分析循环字符串 若遇到有效的左括号 -> 入栈 若遇到有效的右括号 -> 出栈 结束循环并判断栈是否为空,不为空说明有无效的括号源码/** * @原创 2018-01-16 14:52:38 · 764 阅读 · 0 评论 -
[LintCode] 经典二分查找问题 - Java
描述 在一个排序数组中找一个数,返回该数出现的任意位置,如果不存在,返回-1 样例 给出数组 [1, 2, 2, 4, 5, 5]. 对于 target = 2, 返回 1 或者 2. 对于 target = 5, 返回 4 或者 5. 对于 target = 6, 返回 -1. 分析 就用简单的二分查找算法解决 源码 public class Solution {原创 2018-01-16 17:18:07 · 271 阅读 · 0 评论 -
[LeetCode] Find Anagram Mappings - JS
描述 Given two lists Aand B, and B is an anagram of A. B is an anagram of A means B is made by randomizing the order of the elements in A. We want to find an index mapping P, from A to B. A mapping P[原创 2018-01-17 12:03:07 · 196 阅读 · 0 评论 -
[LintCode] 链表节点计数 - JS
描述 计算链表中有多少个节点. 样例 给出 1->3->5, 返回 3. 源码 /** * @param head: the first node of linked list. * @return: An integer */ const countNodes = function (head) { var count = 0; var cur = head原创 2018-01-17 14:27:04 · 573 阅读 · 0 评论