- 博客(58)
- 收藏
- 关注
原创 解决 GitHub 访问失败/缓慢的问题
遇到的问题:github有时可以打开,有时不行,或者很慢,怎么解决?就是把GitHub 服务器的地址直接写到 hosts 文件里,绕过 DNS 的解析。
2025-02-05 10:47:51
890
原创 windows电脑-ubuntu,传输文件
FileZilla是一款免费的工具,是基于 FTP 协议进行文件互传的,在传输过程中我们的ubuntu是作为服务器, FileZilla 工具则是作为客户端。2.检查 /etc/vsftpd.conf 配置文件:sudo vi /etc/vsftpd.conf。然后检查下图 28 和 31 行的内容是否有被注释掉,如果前面有 “#” 号注释起来的话,就去掉即可。3.重启FTP服务:sudo /etc/init.d/vsftpd restart。FileZilla工具可以去官网下载即可,
2025-02-04 18:08:02
642
原创 设计模式
1. 单例设计模式单例模式,是一种常用的软件设计模式。应用该模式的类一个类只有一个实例。即一个类只有一个对象实例。具体实现(1)将构造方法私有化,使其不能在类的外部通过new关键字实例化该类对象。(2)在该类内部产生一个唯一的实例化对象,并且将其封装为private static类型。(3)定义一个静态方法返回这个唯一对象。实现一:饿汉式:该模式的特点是类一旦加载就创建一个...
2020-04-02 23:21:25
108
原创 优先级反转
任务调度有多种方法(算法)1. 罗宾环调度算法:Round-robin scheduling algorithm2. 基于优先级的调度算法:Priority-controlled scheduling algorithm任务调度的一种常见调度算法就是:根据优先级高低去调度,优先让高优先级的任务去执行。任务调度器,总是去激活某个(在所有任务中优先级是最高的),且处于就绪状态的任务,让...
2020-03-16 11:39:59
278
原创 shell脚本实践2:自定义rm命令
linux系统的rm命令太危险,一不小心就会删除掉系统文件。 写一个shell脚本来替换系统的rm命令,要求当删除一个文件或者目录时,都要做一个备份,然后再删除。1. 简单的实现:假设有一个大的分区/data/,每次删除文件或者目录之前,都要先在/data/下面创建一个隐藏目录,以日期/时间命名,比如/data/.201703271012/,然后把所有删除的文件同步到该目录下面,可以使用rsy...
2019-11-12 17:40:12
1309
原创 shell脚本实践1:截取字符串
请根据以下要求截取出字符串中的字符:http://www.aaa.com/root/123.htm1.取出www.aaa.com/root/123.htm2.取出123.htm3.取出http://www.aaa.com/root4.取出http:5.取出http://6.取出www.aaa.com/root/123.htm7.取出1238.取出123.htm...
2019-11-12 14:58:38
333
原创 shell脚本学习(三)
test1:for循环#!/bin/bashfor var in one two three fourdo echo "The number is $var"doneecho "Now show read values from file"file="place"for var in $(cat $file)do echo "Visit bea...
2019-11-01 14:16:24
479
原创 shell脚本学习(二):文件比较等操作
对应《Linux命令行与shell脚本编程大全》 -- 章节12.4.3test1:-d file :检查目录#!/bin/bashdir="/home//shell/dir"if [ -d $dir ]then echo "dir is exist" cd $dir lselse echo "dir is not...
2019-11-01 11:16:22
237
原创 shell脚本学习(一)
test:简单命令的组合#!/bin/bashdatewho结果:2019年 11月 01日 星期五 10:34:27 CSTtty1 2019-10-17 01:40 (:0)pts/2 2019-11-01 09:03 (10.4.205.170)test1:echo的使用#!/bin/bashecho The time and ...
2019-11-01 10:57:03
253
原创 Linux下vim编辑退出的命令(据说70%的程序员都不会)
很久以前,江湖中流传着一个神秘的问题:如何退出Vim编辑器?据说,很多人老死都没有退出Vim,也没有人知道答案。(太扎程序员的心了!!!)ESC进入“正常模式”,然后输入“:”,进入“命令模式”。此时屏幕的下方会出现一个冒号,你可以输入以下命令,并按“ENTER”执行::w,保存文件但不退出vi:w file,将修改另外保存到file中,不退出vi:w! 强制保存,不推出vi...
2019-11-01 09:26:30
202
原创 LeetCode:234. 回文链表
一、问题描述请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true二、解题思路将链表分为两段,并且把后面一段进行倒置,然后再比较前后两段是否相同即可。最简单的方法就是先计算链表的长度,然后将前面一半用头插法的办法进行倒置,最后再比较,但是由于需要的是一半这个特殊的位...
2019-09-24 17:05:20
95
原创 LeetCode:328. 奇偶链表
一、问题描述给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总数。示例 1:输入: 1->2->3->4->5->NULL输出: 1->3->...
2019-09-24 16:52:41
126
原创 LeetCode:138. 复制带随机指针的链表
一、问题描述给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点。二、解题思路第一种:用hashmap,遍历链表然后把它存到 HashMap 中,val 作为 key,Node 作为 value。遍历第二遍链表,将之前生成的节点取出来,更新它们的 next 和 random 指针。查找复杂度为 O(1) ,这样可以把总时间复杂度降到 O(n) ,由于...
2019-09-24 16:00:04
115
转载 STL:list用法总结
list用法汇总https://blog.youkuaiyun.com/xiaoquantouer/article/details/70339869
2019-09-24 11:43:08
121
原创 LeetCode:148. Sort List
一、问题描述Sort a linked list inO(nlogn) time using constant space complexity.Example 1:Input: 4->2->1->3Output: 1->2->3->4Example 2:Input: -1->5->3->4->0Out...
2019-09-24 11:34:54
124
原创 LeetCode:23. Merge k Sorted Lists
一、问题描述Mergeksorted linked lists and return it as one sorted list. Analyze and describe its complexity.Example:Input:[ 1->4->5, 1->3->4, 2->6]Output: 1->1->2->...
2019-09-23 20:15:36
115
原创 LeetCode:21. Merge Two Sorted Lists
一、问题描述Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists.Example:Input: 1->2->4, 1->3->4Ou...
2019-09-19 20:56:46
119
原创 LeetCode:160. Intersection of Two Linked Lists
一、问题描述Write a program to find the node at which the intersection of two singly linked lists begins.For example, the following two linked lists:begin to intersect at node c1.二、思路分析这道题跟删除尾部第...
2019-09-19 20:25:42
113
原创 LeetCode:19. Remove Nth Node From End of List
一、问题描述Given a linked list, remove then-th node from the end of list and return its head.Example:Given linked list: 1->2->3->4->5, and n = 2.After removing the second node from th...
2019-09-19 18:54:30
105
原创 LeetCode:237. Delete Node in a Linked List
一、问题描述Write a function to delete a node (except the tail) in a singly linked list, given only access to that node.Given linked list --head =[4,5,1,9], which looks like following:Example 1...
2019-09-19 17:33:59
102
原创 单链表:从头到尾打印链表
解题思路:第一种方法:逆置单链表,然后输出;第二种方法:利用栈的特性(先进后出),从头部入栈,然后出栈即可;下面着重实现第二种方法。代码实现/*** struct ListNode {* int val;* struct ListNode *next;* ListNode(int x) :* va...
2019-09-18 12:50:09
323
原创 LeetCode:92. Reverse Linked List II
一、问题介绍Reverse a linked list from positionmton. Do it in one-pass.Note:1 ≤m≤n≤ length of list.Example:Input: 1->2->3->4->5->NULL, m = 2, n = 4Output: 1->4->3->...
2019-09-17 18:49:27
123
原创 LeetCode:206. Reverse Linked List
一、问题描述Reverse a singly linked list.Example:Input: 1->2->3->4->5->NULLOutput: 5->4->3->2->1->NULL二、代码实现/** * Definition for singly-linked list. * struct Lis...
2019-09-17 16:57:47
123
原创 把数组排成最小的数
一、问题介绍输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。二、解题思路定义新的大小关系,对vector容器内的数据进行排序,按照 将a和b转为string后若 a+b<b+aa排在b之前的规则排序,如 2 21 因为 21 2 < ...
2019-09-16 20:11:49
166
1
原创 扑克牌中的顺子
一、问题描述从扑克牌中随机抽 5 张牌,判断是不是顺子,即这 5 张牌是不是连续的。 2-10 为数字本身,A 为 1,J 为 11,Q 为 12,K 为 13,而大小王可以看成任意的 数字。(大小王最多4张)二、解题思路1、首先我们应该关注的是大小王等特殊字符,由于可以当成任意的数字,所有当成0处理。2、把数组排序,再统计数组中0的个数3、统计排序之后的数组中相邻数字之间的空缺总...
2019-09-16 16:19:59
313
原创 调整数组顺序使奇数位于偶数前面
一、问题描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。二、解题思路两个指针,一个首、一个尾。然后一个向前、一个向后判断奇、偶,然后交换(类似于快排的思想)三、代码实现void reOrderArray(vector<int> &a)...
2019-09-16 15:47:22
128
原创 LeetCode:349. Intersection of Two Arrays
一、问题介绍Given two arrays, write a function to compute their intersection.Example 1:Input: nums1 = [1,2,2,1], nums2 = [2,2]Output: [2]Example 2:Input: nums1 = [4,9,5], nums2 = [9,4,9,8,4]O...
2019-09-16 12:58:19
100
原创 Vim用法
vim --version 查看vim版本,如果没有安装,那就sudo apt-get install vim:q 退出:q! 强制退出在normal状态下,按i(光标前)、I(光标后)、o(光标下一行)、O(光标上一行)、A(光标行尾部):进入编辑状态(INSERT状态)ESC:进入到NORMAL状态。当不确定自己所在的状态时,按ESC、确保自己回到NORMAL状态。:wq 存盘、退...
2019-09-14 19:37:37
153
原创 ubuntu server命令汇总
安装ubuntu server后(ifconfig看到IP地址),下载xshell连接,但是连接不上,之后在server上,命令:ps -e | grep ssh。查看SSH服务,发现没有安装,命令:sudo apt-get install open-ssh server。开始安装SSH服务。一些shell命令who:那些用户连接到了sudo: 最高权限pwd:当前目录man pw...
2019-09-14 16:11:06
1584
原创 LeetCode:287. Find the Duplicate Number
一、问题描述Given an arraynumscontainingn+ 1 integers where each integer is between 1 andn(inclusive), prove that at least one duplicate number must exist. Assume that there is only one duplicate nu...
2019-09-12 17:06:34
118
原创 STL:unordered_set 与set的区别
c++ std中set与unordered_set区别和map与unordered_map区别类似:1.头文件<unordered_set> <set>2.. set基于红黑树实现,红黑树具有自动排序的功能,因此map内部所有的数据,在任何时候,都是有序的。3. unordered_set基于哈希表,数据插入和查找的时间复杂度很低,几乎是常数时间,而代价是消耗比较...
2019-09-12 16:48:42
1263
原创 STL:set用法总结
一、Set介绍除了没有单独的键,set 容器和 map 容器很相似。定义 set 容器的模板如下四种:set<T> 容器保存 T 类型的对象,而且保存的对象是唯一的。其中保存的元素是有序的,默认用 less<T> 对象比较。可以用相等、不相等来判断对象是否相同。有序,底层红黑树 multiSet<T> 容器和 set<T> 容器保存 T...
2019-09-12 16:35:39
900
原创 LeetCode:217. Contains Duplicate
一、问题描述Given an array of integers, find if the array contains any duplicates.Your function should return true if any value appears at least twice in the array, and it should return false if every e...
2019-09-12 14:30:21
109
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人