- 博客(56)
- 收藏
- 关注
原创 大数相乘
大数相乘大数相乘在面试,ACM,笔试等经常被用到,感觉很有必要学习一下。大数相乘的方法有很多,网上也有很多代码,在这里我们选择了最简单的模拟手算乘法的方法。import java.util.ArrayList;import java.util.Collections;import java.util.Scanner;public class Main { public s...
2018-05-31 10:24:09
249
原创 服务器数据库中创建表
服务器数据库中创建表上一篇博客,成功的在Windows上搭建了服务器,在服务其中的MySQL中创建表,创建表使用到了phpMyAdmin(直接点击wamp图标->phpMyAdmin),首先在左侧创建数据库,然后在自己创建的数据库下创建表,你可以使用phpMyAdmin所提供的按钮界面进行操作,当然,你也可以直接使用SQL语句进行操作。中文乱码的问题在建立表的过程中,需要注意...
2018-05-20 20:00:24
1974
原创 在Windows下搭建服务器
在Windows下搭建服务器写这篇博客的原因自己在2016年的时候,因为需要,自己在windows下搭建了一个服务器,在搭建过程中遇到了许多问题,不过最终还是成功的搭建了,但当时并没有记录下搭建过程,现如今自己想要制作一个网站,需要重新搭建一个服务器,于是又要从头开始,因此自己想要通过博客的形式,记录下自己搭建服务器的过程,遇到的问题,解决问题的方法,方便自己以后查找。使用到的...
2018-05-20 19:42:28
10531
原创 快速排序
快速排序最近简单复习了面试中经常会被问到的简单的问题,其中之一就是快排,平均时间复杂度为nlog(2`n),是不稳定排序算法。 该算法可以简单描述为,第一趟将第一个元素设置为交换元素,然后从后向前找比交换元素小的元素,将其与交换元素交换,接着从前向后找比交换元素大的元素,将其再与交换元素交换,直到这一趟元素排完,接着使用递归的方法,将其前半部分后后办部分进行同样的遍历。具体算法看代码:...
2018-05-18 22:11:45
176
原创 二叉排序树
二叉排序树主要记录了二叉排序数的建立,前中后便利(递归的和非递归的)。代码主要使用Java语言编写。如下所示:import java.util.Scanner;import java.util.Stack;public class Main { public static class TreeNode { int val; TreeNod...
2018-05-18 17:35:18
157
原创 记录LaTeX学习过程_04 参考文献的使用
记录LaTeX学习过程_04 参考文献的使用在LaTeX中使用参考文献,有很多种方法,在这里我们介绍两种常用的。一种是直接写到文章中,这个的好处是简单方便,没有任何难度,适合轻量型文章,如果文章参考文献数量巨大,结构显得不够清楚。另一种是使用文献管理工具,极力推荐使用该方法。方法一这个就是直接写进去,超级简单,可从文件夹下的lt_work_LaTeX/A008查看源码。\d...
2018-04-29 16:49:35
418
原创 记录LaTeX学习过程_03
记录LaTeX学习过程_03有了前面的学习,我们对LaTeX有了基本的了解,下来,动手写一篇小短文,巩固一下之前所学到的知识点。还是参照耿楠老师的PPT进行学习,写一篇小短文。\documentclass{ctexart}\title{\heiti 信息工程学院诚聘英才} %声明了标题\author{\kaishu 西农信工} %作者\date{\today...
2018-04-29 09:46:29
176
原创 记录LaTeX学习过程_02
记录LaTeX学习过程_02在这里以学院耿楠老师的教学PPT为学习资料LaTeX基础知识_1,本文主要记录了自己在阅读实践这篇PPT的过程中的流水账。编写基本了解首先LaTeX中所有的命令都是类似于这样的:\命令[可选参数]{其他参数},当然命令也可以不带参数。一般LaTeX文件第一行都是:\documentclass[letterpaper, 12pt]{article},这...
2018-04-27 10:50:09
199
原创 记录LaTeX学习过程_01
记录LaTeX学习过程_01可以在自己的计算机上下载安装LateX,安装完成之后,在命令提示窗口下输入 tex –version 和 xelatex –version检测自己是否安装成功。如果你不想在本地安装,可以利用一个在线的网页版ShareLaTex进行学习和编写。 第一个LaTeX过程,分为以下三步:编写文件新建一个纯文本文件”testLatex.tex”,使用一个文本编辑...
2018-04-26 15:55:57
170
原创 028 实现StrStr()
LeetCode 第二十八题 实现StrStr() 实现 strStr() 函数。 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。 示例 1: 输入: haystack = “hello”, needle = “ll” 输出: ...
2018-04-18 14:56:16
184
2
原创 027 移除元素
LeetCode 第二十七题 移除元素 给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 > 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 示例 1: 给定 nums = [3,2,2,3],...
2018-04-18 10:37:55
458
原创 026 删除排序数组中的重复项
LeetCode 第二十六题 删除排序数组中的重复项 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 示例 1: 给定数组 nums = [1,1,2] 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为...
2018-04-17 16:58:01
308
原创 025 K个一组翻转链表
LeetCode 第二十五题 K个一组翻转链表 给出一个链表,每 k 个节点一组进行翻转,并返回翻转后的链表。 k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么将最后剩余节点保持原有顺序。 示例 : 给定这个链表:1->2->3->4->5 当 k = 2 时,应当返回: 2->1->4-&...
2018-04-17 15:47:37
2425
1
原创 024 两两交换链表中的节点
LeetCode 第二十四题 两两交换链表中的节点 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 示例: 给定 1->2->3->4, 你应该返回 2->1->4->3. 说明: 你的算法只能使用常数的额外空间。 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 这道题并没有特别的难点,代...
2018-04-17 11:11:48
155
原创 023 合并K个排序链表
LeetCode 第二十三题 合并K个排序链表 合并 k 个排序链表,返回合并后的排序链表。尝试分析和描述算法的复杂度。 示例: 输入: [ 1->4->5, 1->3->4, 2->6 ] 输出: 1->1->2->3->4->4->5->6 本次方法...
2018-04-17 10:32:34
3621
原创 022 括号生成
LeetCode 第二十二题 括号生成 给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。 例如,给出 n = 3,生成结果为: [ “((()))”, “(()())”, “(())()”, “()(())”, “()()()” ] 方法一使用暴力的方法,将所有的括...
2018-04-13 15:47:53
440
原创 021 合并两个有序链表
LeetCode 第二十一题 合并两个有序链表 合并两个已排序的链表,并将其作为一个新列表返回。新列表应该通过拼接前两个列表的节点来完成。 示例: 输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4 方法一使用最原始的办法,定义一个头指针dummy,遍历两个链表,根据链表节点...
2018-04-13 10:51:32
202
原创 020 有效的括号
LeetCode 第二十题 有效的括号 给定一个只包括 ‘(‘,’)’,’{‘,’}’,’[‘,’]’ 的字符串,判断字符串是否有效。 括号必须以正确的顺序关闭,”()” 和 “()[]{}” 是有效的但是 “(]” 和 “([)]” 不是。 这是一道比较简单的题目,参考网址Java public static boolean isValid(Strin...
2018-04-12 19:52:48
2379
2
原创 019 删除链表的倒数第N个节点
LeetCode 第十九题 删除链表的倒数第N个节点 给定一个链表,删除链表的倒数第 n 个节点并返回头结点。 例如, 给定一个链表: 1->2->3->4->5, 并且 n = 2. 当删除了倒数第二个节点后链表变成了 1->2->3->5. 说明: 给的 n 始终是有效的。 尝试一次遍历实现。...
2018-04-12 11:27:33
184
原创 018 四数相加
LeetCode 第十八题 四数相加 给定一个含有 n 个整数的数组 S,数列 S 中是否存在元素 a,b,c 和 d 使 a + b + c + d = target ? 请在数组中找出所有满足各元素相加等于特定值 的 不重复 组合。 注意:解决方案集不能包含重复的四元组合。 例如,给定数组 S = [1, 0, -1, 0, -2, 2],并且给定 target = ...
2018-04-12 11:27:02
523
原创 017 电话号码的之母组合
LeetCode 第十七题 电话号码的之母组合 给定一个数字字符串,返回数字所有可能表示的字母组合。 下面给出数字到字母的映射(和电话号码一样)。 输入:数字字符串 “23” 输出:[“ad”, “ae”, “af”, “bd”, “be”, “bf”, “cd”, “ce”, “cf”]. 在这里使用了队列思想。对于每一个数字,将其所对应的字母,添加到队列中的每...
2018-04-12 11:26:32
234
原创 016 最接近的三数之和
LeetCode 第十六题 最接近的三数之和 给定一个包括 n 个整数的数组 S,找出 S 中的三个整数使得他们的和与给定的数 target 最接近。返回这三个数的和。假定每组输入只存在一个答案。 例如,给定数组 S = {-1 2 1 -4}, 并且 target = 1. 与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2). 其实...
2018-04-12 11:25:56
135
原创 015 三数之和
LeetCode 第十五题 三数之和 给定一个包含 n 个整数的数组 S,是否存在属于 S 的三个元素 a,b,c 使得 a + b + c = 0 ?找出所有不重复的三个元素组合使三个数的和为零。 注意:结果不能包括重复的三个数的组合。 例如, 给定数组 S = [-1, 0, 1, 2, -1, -4], 一个结果集合为: [ [-1, 0, 1...
2018-04-12 11:25:05
205
原创 014 最长公共前缀
LeetCode 第十四题 最长公共前缀 编写一个函数来查找字符串数组中最长的公共前缀字符串。 这道题目的意思是,输入多个字符串,查找这多个字符串的公共前缀。在这里我们参考了解答中的解题方法,共使用了四种方法。方法一Java public static String longestCommonPrefix(String[] strs) { ...
2018-04-12 11:24:24
276
原创 013 罗马数字转整数
LeetCode 第十三题 罗马数字转整数 给定一个罗马数字,将其转换成整数。 返回的结果要求在 1 到 3999 的范围内。 Java public int romanToInt(String s) { if (s.isEmpty()) return 0; int sum = 0; ...
2018-04-12 11:23:38
148
原创 012 整数转罗马数字
LeetCode 第十二题 整数转罗马数字 给定一个整数,将其转为罗马数字。 输入保证在 1 到 3999 之间。 在这里首先需要了解一下罗马数字的定义:罗马数字百度百科,我们查找了几种方法,发现有一种最简单暴力的方法,非常适合本题。在罗马数字百度百科中有C++的代码,我们将其作为参考。 Java public String intToRoman(int ...
2018-04-12 11:22:54
213
原创 011 盛最多水的容器
LeetCode 第十一题 盛最多水的容器 给定 n 个正整数 a1,a2,…,an,其中每个点的坐标用(i, ai)表示。 画 n 条直线,使得线 i 的两个端点处于(i,ai)和(i,0)处。请找出其中的两条直 > 线,使得他们与 X 轴形成的容器能够装最多的水。 注意:你不能倾斜容器,n 至少是2。 解题思路首先,这道题中所有的直线都是垂直于X...
2018-04-12 11:21:35
595
原创 010 正则表达式匹配
LeetCode 第十题 正则表达式匹配实现支持 ‘.’ 和 ‘*’ 的正则表达式匹配。 ‘.’ 匹配任意单个字符。 ‘*’ 匹配零个或多个前面的元素。 匹配应该覆盖整个输入字符串(不是部分字符串)。 函数: bool isMatch(const char *s, const char *p) 例子: isMatch(“a...
2018-04-11 16:27:42
735
原创 009 回文数
LeetCode 第九题 回文数 判断一个整数是否是回文数。不能使用辅助空间。 一些提示: 负整数可以是回文数吗?(例如 -1) 如果你打算把整数转为字符串,请注意不允许使用辅助空间的限制。 你也可以考虑将数字颠倒。但是如果你已经解决了 “颠倒整数” 问题的话,就会注意到颠倒整数时可能会发生溢出。你怎么来解决这个问题呢? 本题有一种比较通用的解决方式。 ...
2018-04-11 16:26:59
118
原创 008 字符串转整数
# LeetCode 第八题 字符串转整数 实现 atoi,将字符串转为整数。 提示:仔细考虑所有输入情况。如果你想挑战自己,请不要看下面并自己考虑所有可能的输入情况。 说明:这题解释的比较模糊(即没有指定输入格式)。你得事先汇集所有的输入情况。 atoi的要求: 这个函数需要丢弃之前的空白字符,直到找到第一个非空白字符。之后从这个字符开始,选取一个可选的正...
2018-04-11 16:26:14
144
原创 007 颠倒整数
LeetCode第七题 颠倒整数 给定一个范围为 32 位 int 的整数,将其颠倒。 例 1: 输入: 123 输出: 321 例 2: 输入: -123 输出: -321 例 3: 输入: 120 输出: 21 java public int reverse(int x) { ...
2018-04-11 16:25:30
145
原创 006 Z字形转换
LeetCode第六题 Z字形转换 将字符串 “PAYPALISHIRING” 以Z字形排列成给定的行数:(下面这样的形状) P A H N A P L S I I G Y I R 之后按逐行顺序依次排列:”PAHNAPLSIIGYIR” 实现一个将字符串进行指定行数的转换的函数: string convert(string ...
2018-04-11 16:24:47
197
2
原创 005 最长回文子串
LeetCode第五题 最长回文子串给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 长度最长为1000。 示例: 输入: “babad” 输出: “bab” 注意: “aba”也是有效答案 示例: 输入: “cbbd” 输出: “bb” 解题思路可以使用暴力法,将字符串中所有的字串找出来,然后验证每一个字串是否是回文;...
2018-04-11 16:23:29
174
原创 004 两个排序数组的中位数
LeetCode第四题 两个排序数组的中位数有两个大小为 m 和 n 的排序数组 nums1 和 nums2 。 请找出两个排序数组的中位数并且总的运行时间复杂度为 O(log (m+n)) 。 示例 1: nums1 = [1, 3] nums2 = [2] 中位数是 2.0 示例 2: nums1 = [1, 2] nums2 ...
2018-04-11 16:22:09
181
原创 003 无重复字符的最长字串
LeetCode 第三题 无重复字符的最长字串给定一个字符串,找出不含有重复字符的 最长子串 的长度。 示例: 给定 “abcabcbb” ,没有重复字符的最长子串是 “abc” ,那么长度就是3。 给定 “bbbbb” ,最长的子串就是 “b” ,长度是1。 给定 “pwwkew” ,最长子串是 “wke” ,长度是3。请注意答案必须是一个子串,”pwke” 是 子序列 而不是子串。...
2018-04-11 16:21:01
229
原创 002 两数相加
LeetCode 第二道题 两数相加给定两个非空链表来代表两个非负整数,位数按照逆序方式存储,它们的每个节点只存储单个数字。将这两数相加会返回一个新的链表。 你可以假设除了数字 0 之外,这两个数字都不会以零开头。 示例: 输入:(2 -> 4 -> 3) + (5 -> 6 -> 4) 输出:7 -> 0 -> 8 原因:342...
2018-04-11 16:18:27
200
原创 001 两数之和
初试LeetCode,刷第一道题:需要注意的是,LeetCode中只要提交函数即可,不必注重输入输出,格式问题。 给定一个整数数列,找出其中和为特定值的那两个数。 你可以假设每个输入都只会有一种答案,同样的元素不能被重用。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 ...
2018-04-11 16:14:05
150
原创 GitHub初试
尝试着使用GitHub欢迎大家访问我的GitHub写这篇博客的的主要目的是介绍如何使用GitHub保存工作文件,又是如何将文件回退到之前版本等操作。 首先需要在GitHub上创建一个属于自己的账号,成功注册好之后,即可在GitHub上托管自己的项目了。 创建工程点击Start a project按钮,创建工程。 在这里,我们创建一个名为:test的工程,同时勾选:In...
2018-03-10 20:13:32
207
原创 MeVisLab学习笔记_003
MeVisLab之鼠标操作本次介绍SoMouseGrabber模型,该模型主要描述了有关于鼠标的操作。我们想绘制一个圆锥体,通过点击鼠标,更改圆锥体的属性(底面半径,高),具体而言就是同时按住鼠标的左右键,向右拖动,圆锥体变高,向左拖动,圆锥体变低,向上拖动,圆锥体底面半径变大,向下拖动,圆锥体底面半径边小。具体效果和各个模型之间的参数如下图所示:在这里需要详细介绍的是SoMo
2018-01-09 20:57:03
1808
原创 MeVisLab学习笔记_002
本次学习,简单介绍一下有关画图,并将其显示出来,首先,画一个简单的圆锥体。其中SoCone表示的是圆锥体,有关圆锥体的属性(显示部分,半径,高度,),可以在面板中设置。SoExaminerViewer是展示窗口,可以将之前画的圆锥体,显示出来。双击SoExaminerViewer显示结果可以如下所示:当然,通过SoBaseColor修改圆锥体的颜色,或者通过SoMaterial设计
2018-01-09 14:11:26
1904
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人