1.5k 2 分钟

# 引言 题目链接:https://leetcode.com/problems/add-two-numbers/description/ # 题目大意 给出两个的倒序的链表,链表每个节点的值为非负个位数,链表反续串起来是一个数字,按照加法规则将两个链表相加并返回一个倒序链表,链表每个节点的数字对应计算结果的每一位。 例: Input: (2 -> 4 -> 3) + (5 -> 6 -> 4) Output: 7 -> 0 -> 8 Explanation: 342 + 465 = 807. Hint: You...
1.6k 2 分钟

# 引言 题目链接:https://leetcode.com/problems/longest-substring-without-repeating-characters/description/ # 题目大意 输入一个字符串,输出没有重复字符的最长子串的长度。 例: Example1 Input: "abcabcbb" Output: 3 Explanation: The answer is "abc", with the length of 3. Example2 Input: "bbbbb" Output:...
826 1 分钟

# 引言 题目链接:https://leetcode.com/problems/two-sum/description/ # 题目大意 给出一个序列和一个目标值,判断序列中是否有两个数相加等于序列值 You may assume that each input would have exactly one solution, and you may not use the same element twice 因此认为给出序列必有解,并且不存在两个相同的元素 # 题解 # 一句话题解 利用 unordered_map 做好值和序号映射,在初始化 map 的时候用当前值和 target...
7.7k 11 分钟

# 引言 在 Lua 中,函数是对语句和表达式进行抽象的主要方法。既可以用来处理一些特殊的工作,也可以用来计算一些值。 Lua 提供了许多的内建函数,你可以很方便的在程序中调用它们,如 print() 函数可以将传入的参数打印在控制台上。 Lua 函数主要有两种用途: 完成指定的任务,这种情况下函数作为调用语句使用 计算并返回值,这种情况下函数作为赋值语句的表达式使用 本篇博客,主要讲解了 lua 中的基本函数,闭包,尾调用,迭代器等知识点 # Lua 函数基本特性 # 函数定义 Lua 编程语言函数定义格式如 optional_function_scope function...
4.5k 6 分钟

# 引言 lua 作为一种简单、可扩展、可移植及高效的脚本语言,广泛地被用于网络游戏以及手机游戏中。写游戏常常需要跟 lua 打交道,还是做些笔记记下来,当做备忘,方便以后没事翻一翻 # 官方文档 在开始吹逼之前先放一下官方文档,毕竟官方的东西还是挺权威的 [http://www.lua.org/manual/][http://www.lua.org/manual/] 点击对应版本就可以看相关的 api 文档或者介绍了 # 一、类型与值 lua 中有 8 种基础类型如下表所示 数据类型 描述 nil 这个最简单,只有值 nil 属于该类,表示一个无效值 (在条件表达式中相当于 false...
6.4k 9 分钟

# 引言 最近学习 Lua,在解释器中运行代码很是不习惯,加上自己偏好使用 Sublime ,于是将 Lua 在 Sublime 中进行相关配置,将过程整理备忘并推荐相关插件。 # Lua 环境配置 # Lua 安装 下面给出两种安装方式,可执行程序安装 和 源码编译安装,在很多人看来可能基于源码编译安装更加麻烦,事实也是如此。 但是基于源码版安装后续安装 luacheck 、 luasocket 等常用库时可以利用 lua 源码用 luarocks 基于库源码编译安装,毕竟有些库,编译后的版本可能已经很久没有维护了而且对于 lua...
4.9k 7 分钟

# 导读(反射简介) Reflection 是 Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说 "自审",并能直接操作程序的内部属性。即可以在运行时加载、探知、使用编译期间完全未知的 classes 。换句话说, Java 程序可以加载一个运行时才得知名称的 class ,获悉其完整构造(但不包括 methods 定义),并生成其对象实体、或对其 fields 设值、或唤起其 methods 即有类似如下语句 ClassA objA =...
31k 42 分钟

# Latex 简介 Latex 是一种文件生成系统,它生成纯文本文件,后缀名为 .tex 。它不像 Word 等软件编写文件一样所见即所得,而是用一定的语法或者标记符号来组织内容。 Latex 在学术写作中被广泛使用,特别是像数学和计算机这样的学科。 Latex 可以让你忘记格式,而专注于内容。 在浏览器中使用 Latex ,就不得不提到 MathJax , 它是一款运行在浏览器中的开源的数学符号渲染引擎,使用 MathJax 可以方便的在浏览器中显示数学公式,不需要使用图片。目前, MathJax 可以解析 Latex 、 MathML 和 ASCIIMathML...
4.5k 6 分钟

# Bridge 模式简介 桥接(Bridge)是用于把抽象化与实现化解耦,使得二者可以独立变化。这种类型的设计模式属于 结构型模式,它通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦。这种模式涉及到一个作为桥接的接口,使得实体类的功能独立于接口实现类,这两种类型的类可被结构化改变而互不影响。 # 运用场景分析 设想如果要绘制矩形、圆形、椭圆、正方形,我们至少需要 4...
3.9k 5 分钟

# Strategy 模式简介 策略模式 (Strategy Pattern), 可以使一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于 行为型模式 在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。 # 运用场景分析 举个栗子:在软件开发中常常遇到类似的情况,实现某一个功能有多种算法或者策略,我们可以根据环境或者条件的不同选择不同的算法或者策略来完成该功能。如查找、排序等。 一种常用的方法是硬编码 ( Hard Coding )...