- 博客(458)
- 资源 (32)
- 收藏
- 关注
原创 用C语言实现一个FTP服务系统 有源码
实现一个FTP服务系统一、实验目的通过该实验,掌握Linux环境下的多线程/进程编程技术、文件操作、用户权限管理、进程间通信技术实验要求基于客户/服务器交互模式,采用TCP/IP通信协议,实现一个支持远程文件传输的客户/服务器软件,支持文件的上传和下载。其中客户端软件命名为myftp,服务器软件命名为ftpserver,具体功能需求如下:服务器启动方式。执行ftpserver [IP地址] port启动FTP服务。其中IP地址为可选项。若不提供服务器IP地址,FTP服务将自动绑定到本地网
2020-12-24 15:36:21
2312
原创 冒泡排序求第k大的数
def bubbleSort(arr,k): n = len(arr) for i in range(n): for j in range(0, n - i - 1): if arr[j] > arr[j + 1]: arr[j], arr[j + 1] = arr[j + 1], arr[j] k-=1 if k<= 0: print(arr[n -.
2020-12-20 14:14:16
693
原创 奇怪的排序问题
给定一个序列,每次可以选择一个数,如果这个数闭后面的数大,则交换位置并继续比较,知道比对方小或者已经在队尾。输入:4, [4, 1, 2, 3]输出:1class Solution {public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * @param n int整型 * @param a int整型vector * @return int整型 */
2020-12-18 21:06:32
435
1
原创 面试 智力题
5个海盗分100个金币5个海盗抢得100枚金币后,讨论如何进行公正分配。他们商定的分配原则是:(1)抽签确定各人的分配顺序号码(1,2,3,4,5);(2)由抽到1号签的海盗提出分配方案,然后5人进行表决,如果方案得到超过半数的人同意,就按照他的方案进行分配,否则就将1号扔进大海喂鲨鱼;(3)如果1号被扔进大海,则由2号提出分配方案,然后由剩余的4人进行表决,当且仅当超过半数的人同意时,才会按照他的提案进行分配,否则也将被扔入大海;(4)依此类...
2020-12-15 16:17:01
508
2
原创 顺序表求最大和最小值 删除一个单链表 最优算法
typedef struct{ int data[205]; int length;} List;/**递归求最大(小)值如果是最后一个元素则返回当前值,否者返回当前值和后面n个的最大(小)值中大(小)的那个*////求最大int mx(List la,int now){ if(now==la.length-1) return la.data[now]; return max(mx(la,now+1),la.data[now]);}/.
2020-12-13 15:12:38
781
1
原创 实现一个FTP服务系统 c语言
实现一个FTP服务系统一、实验目的通过该实验,掌握Linux环境下的多线程/进程编程技术、文件操作、用户权限管理、进程间通信技术实验要求基于客户/服务器交互模式,采用TCP/IP通信协议,实现一个支持远程文件传输的客户/服务器软件,支持文件的上传和下载。其中客户端软件命名为myftp,服务器软件命名为ftpserver,具体功能需求如下:服务器启动方式。执行ftpserver [IP地址] port启动FTP服务。其中IP地址为可选项。若不提供服务器IP地址,FTP服务将自动绑定到本地网
2020-12-13 15:05:36
2428
6
原创 万能 解决ubuntu网易云音乐不能播放的各种问题
在ubuntu下用网易云音乐听歌真是一件艰辛的事情,虽然官方提供了客户端,但是还是存在很多问题,虽然是会员但是有很多歌莫名其秒听不了。用网页版的也有同样的问题。正在百思不得其解的时候,偶然发现vscode上面竟然有网易云插件,各种功能一个不少,这里附一个有效链接https://marketplace.visualstudio.com/items?itemName=yxl.cloudmusic,核心就是Ctrl+p,输入命令安装ext install yxl.cloudmusic,然后就可以尽情享用了呵呵哈哈
2020-12-12 21:53:55
2028
原创 【特简单】在使用3.3版本的ceres时报错error: ‘integer_sequence’ is not a member of ‘std‘错误
在使用3.3版本的ceres时报错error: ‘integer_sequence’ is not a member of ‘std‘错误,百度了一下网上全是说版本过高回退到1.几的版本,仔细一看,integer_sequence是c++14里的东西,其实只需要在CMakeLists.txt里面修改c++的版本就行了,一个小问题倒也费了点功夫搞明白set(CMAKE_CXX_FLAGS "-std=c++14")...
2020-12-12 09:12:38
3003
5
原创 状态压缩 背包问题
n个物品,每个物品有一个体积v[i]和重量g[i],选择其中总体积恰好为V的若干个物品,使得这些物品的总重量最大,求最大重量。如果不存在合法方案,返回-1。输入[1,2,3],[2,3,4],3返回5输入[1,3],[100,300],2返回-1class Solution {public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 返回总体积为V若干物品的最大总重量,如果g存在选择若干物品总
2020-12-11 22:09:24
424
原创 最长的公共前后缀的长度
对于字符串ABABA而言,“ABA”既是它的前缀,又是他的后缀,因而是最长的公共前后缀,故返回3如果没有任何一个公共前后缀满足要求,返回-1下面的两个函数都可以class Solution {public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 给定一个字符串s,返回具有相同前缀后缀的子串的第二大长度,反之,返回-1即可。 * @param s string字符串 代表题意中的字符串s .
2020-12-11 21:36:04
2287
原创 取子问题 两个人怎么保证先走的赢
取子问题:如果n%(m+1)为0,那么后手赢,如果n%(m+1)!=0,那么先手赢。考虑到只剩m+1个棋子的时候,这个时候谁取谁输。 所以 如果n%(m+1)为0,那么先手至少取了1个,后手可以对应的取,使得剩下棋子数保持n%(m+1)=0,这样下去,先手一定会面临在m+1个棋子中取子的问题,先手必输。 如果n%(m+1)!=0,那么先手可以先行取子,使得剩余的棋子保持n%(m+1)=0,这样后手无论怎么取,先手都可以调整取子,使得n%(m+1)=0,这样就可以保证先手必赢。.
2020-12-08 21:54:21
1887
原创 二分法 前缀和 最长子序列
牛牛现在有一个长度为len只包含小写字母‘a’-'z'的字符串x,他现在想要一个特殊的子序列,这个子序列的长度为3*n(n为非负整数),子序列的第[1,n]个字母全部为‘a’,子序列的[n+1,2*n]个字母全部为‘b’,子序列的[2*n+1,3*n]个字母全部为‘c’,牛牛想知道最长的符合条件的独特子序列的长度是多少。输入"cbacb" 输出0输入"abaabbcccc" 输出6方法一: 二分法class Solution {public: /** * 代码中的类名、
2020-12-08 21:50:06
564
原创 腾讯编程面试
1.给定一个字符串str,求其中全部数字所代表的数字之和sum。如果数字前面有奇数个'-'为负数,偶数个‘-’为正数如:”B12AS-3.3GK--6.3“之和为12-3.3+6.3=152.给定一个数组randomArry<>,归并排序算法,返回sortArry<>3.给定好友表friend_table,有两列:person_id,friend_id。求一张二度好友(好友的好友),注意去重并排除自己。#include<iostream>#...
2020-12-08 10:46:00
369
原创 c++ string字符串的一些操作
字符串转任意类型的数字template <class Type>Type stringToNum(const std::string& str){ std::istringstream iss(str); Type num; iss >> num; return num;}提取字符串中用分隔符分开的内容typedef std::string::size_type string_size;std::vector<
2020-12-06 19:32:40
389
原创 天花板
牛牛想知道的值是多少(式子中表示向上取整),现在牛牛给你n,请你告诉牛牛和是多少。输入:10输出:33class Solution {public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * @param n int整型 * @return long长整型 */ typedef long long ll; long long Sum(int n) { .
2020-12-04 21:57:04
400
原创 求这个字符串修改至多k次后的的一个最长子序列
给出一个仅包含小写字母的字符串s,你最多可以操作k次,使得任意一个小写字母变为与其相邻的小写字母(ASCII码差值的绝对值为1),请你求出可能的最长相等子序列(即求这个字符串修改至多k次后的的一个最长子序列,且需要保证这个子序列中每个字母相等)。子序列:从原字符串中取任意多个字母按照先后顺序构成的新的字符串。输入2,"abcde"返回值3示例2输入10,"acesxd"返回值4class Solution {public: /** ...
2020-12-04 21:52:27
867
原创 Bang! Bang! 动态规划 排列组合
音游狂热爱好者牛牛接到了一个新的任务,那就是给一张乐谱设计重音符。每当玩家敲击重音符的时候就会发出"bang"的美妙声音!!每一张乐谱都有n个音符从左到右一字排开,现在牛牛的任务就是选出其中m个音符将其标记为重音符,同时任意两个重音符之间都必须隔着至少k个音符。一个有意思的问题诞生了,请求出这样合法的设计方案种数,并输出答案对1000000007取模的结果。输入3,2,1返回值1//方法一,递归复杂度太大class Solution {public: /*.
2020-12-04 21:48:21
603
原创 征服游戏 Floyd算法
Conquer是一款桌面游戏,在这个游戏里,几个相互对立的玩家要灭掉对方的国家。游戏板上分成很多假设的国家。当轮到一个玩家时,一个国家的军队只能攻击边界相连的敌对国家。在征服一个国家之后,军队就可以移动到刚被征服的国家。在游戏期间,玩家通常要征服一连串的国家,以便把大量军队从起始国家转移到目标国家。通常,玩家在选择要征服路径上的国家时,尽量使要征服的国家数量最少。假定游戏板上有n个国家,编号为0至n-1。请编写程序,对于给定的起始国家和目标国家,计算到达目标国家至少需要征服多少个国家,不必输出征服的国家
2020-12-03 16:16:54
927
原创 图深度优先遍历
编写程序对给定的有向图(不一定连通)进行深度优先遍历,图中包含n个顶点,编号为0至n-1。本题限定在深度优先遍历过程中,如果同时出现多个待访问的顶点,则优先选择编号最小的一个进行访问,以顶点0为遍历起点。输入格式:输入第一行为两个整数n和e,分别表示图的顶点数和边数,其中n不超过20000,e不超过50。接下来e行表示每条边的信息,每行为两个整数a、b,表示该边的端点编号,但各边并非按端点编号顺序排列。输出格式:输出为一行整数,每个整数后一个空格,即该有向图的深度优先遍历结点序列。输入样
2020-12-03 16:15:46
3737
原创 单源最短路径
请编写程序求给定正权有向图的单源最短路径长度。图中包含n个顶点,编号为0至n-1,以顶点0作为源点。输入格式:输入第一行为两个正整数n和e,分别表示图的顶点数和边数,其中n不超过20000,e不超过1000。接下来e行表示每条边的信息,每行为3个非负整数a、b、c,其中a和b表示该边的端点编号,c表示权值。各边并非按端点编号顺序排列。输出格式:输出为一行整数,为按顶点编号顺序排列的源点0到各顶点的最短路径长度(不含源点到源点),每个整数后一个空格。如源点到某顶点无最短路径,则不输出该条路径长
2020-12-03 16:14:46
2137
原创 二叉树最近公共祖先
struct TreeNode{ int val; TreeNode* left; TreeNode* right; TreeNode(int x) : val(x), left(NULL), right(NULL){}};TreeNode* lowerCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q){ if(!root) return NULL; if(root == p || root.
2020-12-02 19:25:21
229
原创 怕npy的牛牛
牛牛非常怕他的女朋友,怕到了走火入魔的程度,以至于每当他看到一个字符串同时含有n,p,y三个字母他都害怕的不行。现在有一个长度为m的只包含小写字母‘a’-‘z’的字符串x,牛牛想知道能令他不害怕的最长子串的长度是多少。(对于字符串”abc”来说,”c”,”ab”都是原串的子串,但”ac”不是原串子串)输入"abcdefghijklmn"输出14输入"ypknnbpiyc"输出7说明“pknnbpi”为其符合条件的最长子串,长度为7。class Solution
2020-12-01 21:24:37
398
原创 深信服新手入门指引——软件开发工程师自我修炼
1 软件开发工程师一、通用知识(1)参考书籍:《代码大全》-了解好的代码该怎么写;《TCP/IP协议详解》卷一 - 掌握计算机网络理论知识《Unix网络编程》卷一、卷二 - 网络编程基础知识(2)开源社区:下列开源项目任选一个专研,写写学习笔记:libevent, lua, ngnix, git - 从使用到设计思路到代码结构,编程技巧二、安全方向(安全类岗位通用)(1)参考书籍:《Metasploit渗透测试指南》《白帽子讲Web安全》《黑客攻防技术宝典》:
2020-11-29 12:55:10
2336
1
原创 牛牛摆玩偶
牛牛有n(2≤n≤105)个玩偶,牛牛打算把这n个玩偶摆在桌子上,桌子的形状的长条形的,可以看做一维数轴。 桌子上有 M 个互不相交的区间(1≤M≤10^5,这些区间上面可以放玩偶。一个位置只能放一个玩偶,玩偶之间的距离越大越美观,牛牛想最大化 D 的值,其中 D 为最近的两个玩偶之间的距离。请帮牛牛求出 D 的最大可能值。输入:5,3,[[0,2],[4,7],[9,9]]输出:2/** * struct Interval { * int start; * int end; * In
2020-11-27 22:16:49
525
原创 交叉乘
上小学二年级的牛牛已经精通整数的加法和乘法。现在你要考考他。你先给出一个整数数组a1,a2,...,an,然后每次你会给一对整数l,r(l≤r),牛牛需要算出的值。但是牛牛算完之后你不能不确定他算得对不对,为了验证他的答案,你决定自己算一遍。为了不输出过大的答案,假设答案为ans,请输出ans % 1,000,000,007。提示:在%1,000,000,007的意义下/2相当于*500,000,004输入:[1,2,5,3,4],[1,4,2,5,2,2]输出:[41,71,0]
2020-11-27 22:16:40
387
原创 牛牛掷硬币
牛牛最近很喜欢掷硬币,由于他今天很无聊,所以他在家掷了n次硬币,如果这n次硬币全部朝上或者全部朝下牛牛就很开心,请问牛牛开心的概率是多少。输入:5输出:"0.06"说明:概率为0.0625,四舍五入两位小数为"0.06"方法一string Probability(int n){ string ans[] = {"1.00", "0.50", "0.25", "0.13", "0.06", "0.03", "0.02", "0.01"}; if(n >= 9){
2020-11-27 21:48:20
419
原创 牛牛打怪兽
牛牛在各个平台被各种传奇游戏的广告轰炸,所以他决定去玩一玩这类的游戏。这类游戏挂机就可以升级,所以牛牛每天都能变强。在第i天里,牛牛能杀死防御力小于等于i的怪物。但由于牛牛还要刷题,所以牛牛每天最多杀一只怪物。这个游戏共有n只怪物,每只怪物的防御力为DEFi],牛牛想知道最少要到第几天才能把这n只怪物都杀死。输入2, [7, 3]输出7说明牛牛可以在第3天杀死一只防御为3的怪物,在第7天杀死一只防御力为7的怪物,所以牛牛最少能在第7天把这些怪物杀死。class Solution
2020-11-24 22:22:53
483
原创 整除问题
给定a, b, c, d,求所有x×y被2021 整除的 (x, y) 数对个数,其中a≤x≤b,c≤y≤d,c≤y≤d。输入1, 50, 1, 50输出2说明仅有两对:(43, 47) 和 (47, 43)输入1,2021,1,2021输出7905说明注意,(2021, 2021) 仅应该被计数一次class Solution {public: /** * 寻找所有能整除 2021 的数对个数 * @pa...
2020-11-24 22:19:50
848
原创 Tree VI
系统中有一棵n个点的完全k叉树,现给出它的DFS先序遍历序列aia_iai,请你还原这棵树,并返回加密后的答案。答案加密方法:所有边两个端点异或的和,下面给出完全二叉树的定义:若设二叉树的深度为k,除第 k 层外,其它各层 (1~k-1) 的结点数都达到最大个数,第k层所有的结点都连续集中在最左边。请你根据这个定义进行适度推广,得到完全k叉树的含义。输入2,[1,2,3,4,5]返回14说明树边为(1,2),(1,5),(2,3),(2,4)...
2020-11-24 22:13:23
438
原创 简单的公式
现在有3个数组a,b,ca[1]=2,a[2]=6,对所有的n>=3,a[n] = 2*a[n-1] + 3*a[n-2]。b[1]=7,b[2]=35,对所有的n>=3,b[n] = 3*b[n-1] + 10*b[n-2]。对所有的n>=1,有c[n] = a[n]*b[n]。现在给你一个正整数n,返回c[n]%1000000007的值。输入2输出210说明a[2]=6,b[2]=35,c[2]=a[2]*b[2]=210。输入10输
2020-11-24 22:06:41
456
原创 动态数组哈希表 创建、插入、删除、查找
#include <stdio.h>#include <stdlib.h>#include <ctype.h>#define __USE_BSD#include <string.h>#include "global.h"#include "darray.h"#include "sorting.h"// Can be redefined if Value_Type changesint compare(Value_Ty...
2020-11-24 16:24:00
754
原创 二叉搜索树哈希表创建、插入、删除、查找
#include <stdio.h>#include <stdlib.h>#include <ctype.h>#define __USE_BSD#include <string.h>#include "global.h"#include "bstree.h"//2 variables to find the average number of comparionsint comparision = 0;int foun...
2020-11-24 16:23:07
439
原创 线性哈希表创建、查找、插入、删除、扩容
#include <stdio.h>#include <stdlib.h>#include <ctype.h>#define __USE_BSD#include <string.h>#include <math.h>#include "global.h"#include "hashset.h"//global variable for collisionsint collisionTotal = 0;// Can ...
2020-11-24 16:21:20
836
原创 loam使用记录
使用ceres编译报错 error: ‘integer_sequence’ is not a member of ‘std‘修改cmake 将设置c++标准的set(CMAKE_CXX_FLAGS "-std=c++11")替换为set(CMAKE_CXX_STANDARD 11)新版本cmake设置c++标准都是下面这种方法,但我也不知道为什么这样改编译就没问题,没时间细究,希望有路过的大佬能解答一下...
2020-11-12 16:32:42
376
原创 你可以获得的最大硬币数目
/*有 3n 堆数目不一的硬币,你和你的朋友们打算按以下方式分硬币:每一轮中,你将会选出 任意 3 堆硬币(不一定连续)。Alice 将会取走硬币数量最多的那一堆。你将会取走硬币数量第二多的那一堆。Bob 将会取走最后一堆。重复这个过程,直到没有更多硬币。给你一个整数数组 piles ,其中 piles[i] 是第 i 堆中硬币的数目。返回你可以获得的最大硬币数目。示例 1:输入:piles = [2,4,1,2,7,8]输出:9解释:选出 (2, 7, 8) ,Al..
2020-11-11 16:27:25
410
原创 并查集 计算朋友圈总数
/*计算朋友圈总数输入:[[1,1,0], [1,1,0], [0,0,1]]输出:2 解释:已知学生 0 和学生 1 互为朋友,他们在一个朋友圈。第2个学生自己在一个朋友圈。所以返回 2 。*/#include<bits/stdc++.h>using namespace std;void print(vector<int>& arr){ for(auto i : arr){ cout<<i<<".
2020-11-11 16:06:34
904
原创 c/c++ pipe fork管道 子进程
#include<bits/stdc++.h>#include<unistd.h>#include <stdio.h>#include <stdlib.h>using namespace std;#define MAXIMUM 1000int main(){ int fd[2]; pid_t pid; char line[MAXIMUM]; if(pipe(fd) < 0){ printf.
2020-11-11 15:45:09
702
原创 Matrix Multiplication in C++
COMP26020 Part 1– Assignment 2:Matrix Multiplication in C++The goal of this assignment is to write a C++ program performing various operations on matrices: matrixscalaraddition/multiplication as well as matrix-matrix addition/multiplication. The program
2020-11-08 14:49:42
945
原创 面试常问问题之数据库(持续更新中...)
SQL优化1. 如何定位及优化SQL语句的性能问题?创建的索引有没有被使用到?或者说怎么才可以知道这条语句运行很慢的原因?对于低性能的SQL语句的定位,最重要也是最有效的方法就是使用执行计划,MySQL提供了explain命令来查看语句的执行计划。我们知道,不管是哪种数据库,或者是哪种数据库引擎,在对一条SQL语句进行执行的过程中都会做很多相关的优化,对于查询语句,最重要的优化方式就是使用索引。而执行计划,就是显示数据库引擎对于SQL语句的执行的详细情况,其中包含了是否使用索引,使用什么索引,使用的
2020-11-07 18:06:09
940
原创 面试常问问题之数据结构(持续更新中...)
常用查找算法?具体实现常用排序算法?具体实现,哪些是稳定的,时间复杂度、空间复杂度,快速排序非递归如何实现?快排的优势?图的常用算法?深度广度遍历; 广度优先遍历; 最短路径Floyed算法; 最短路径Dijktral算法; 最小生成树,Prime算法; 最小生成树Kuraul算法;哈夫曼编码?给定n个权值作为n个叶子结点,构造一棵二叉树,若带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点
2020-11-07 17:54:53
421
HMC5883磁力计
2017-12-04
Arduino_电子积木基础套装中文教程
2017-12-04
动态系统辨识 导论与应用 第二部分
2017-12-29
arduino---processing.
2017-12-04
自动控制原理习题精解与考研指导 (新版) 徐薇莉
2017-12-04
Drcom5.2【Win】破解版
2017-12-09
人工智能与符号计算
2017-12-04
自动控制原理(I-2)部分答案
2017-12-04
C程序设计技术(第4版)章节习题参考答案
2017-12-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅