自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 资源 (1)
  • 收藏
  • 关注

原创 mac os下GitHub使用说明

1.检查是否安装git检查电脑是否已安装git,终端输入:git2.创建ssh key,配置git1)设置username和email(github每次commit都会记录他们)git config --global user.name "username"git config --global user.email "your email address"2)通过终端命令创建ssh keyssh-keygen -t rsa -C "your email address"3)cat查

2020-09-12 20:56:29 235

原创 Mac安装numpy

在终端上输入以下命令 pip3 install numpy

2020-09-02 10:49:28 326

原创 C++获取均值为0标准差为1的正态分布随机数

前几天在实习的项目中,要求用c++获取符合均值为0、标准差为1的正态分布的随机数。百度发现C++的#include 库里有现成的normal_distribution<>。哈哈哈哈高兴坏了…为了使得程序的每次运行都产生不同的结果加入代码unsigned seed = std::chrono::system_clock::now().time_since_epoch().count();完整代码:#include <iostream>#include <random&

2020-08-30 15:13:38 3907

原创 C++实现第一类贝塞尔函数

第一类贝塞尔函数这几天实习碰到了半整阶的第一类的贝塞尔函数,而且是复数域的。最开始在网上查资料是用递推公式求解的,因为在计算特殊值J(1/2)和J(-1/2)的过程中会省略掉很多项并不精确,且在递推过程中也会省略很多项,导致最终递推得到的结果并不精确,故而又改为实现贝塞尔函数的定义函数。定义公式:递推公式:求导递推公式:对贝塞尔函数求导是用的如下递推公式,需要保证贝塞尔函数一定要算的精确,求导结果才能精确。求导也有专门的公式,也可以选择实现公式,该函数的n可以取任意值,包括负数、小数。因为

2020-08-19 23:27:44 2990 2

原创 Java实现伽马函数gamma()

实习的项目里遇到了第一类贝塞尔函数,C++里有直接的贝塞尔函数可以使用,但是是实数域的而且仅C++17支持。项目里是要用到复数域的半整阶的第一类贝塞尔函数和第二类汉克尔函数,所以就直接根据原始定义实现了半整阶的第一类贝塞尔函数。贝塞尔函数定义公式可以用伽马函数求解,就顺便把伽马函数也实现了。写完了发现C++的cmath里有现成的伽马函数tgamma()有float、double、long double三种形式。思路分析递归实现伽马函数public static double gamma(double

2020-08-19 22:55:07 2491 1

原创 Java实现堆排序

import java.util.Arrays;/** * 堆排序 * @author ym * */public class HeapSort { /** * 调整大顶堆 * @param arr 待排序列 * @param parent 父节点 * @param len 待排序列尾元素索引 */ public static void adjustHeap(int[] arr, int i, int len) { int temp = arr[i]; //先取出

2020-08-03 23:46:23 102

原创 归并排序递归详解

归并排序(Merge sort)是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。分治法将问题分(divide)成一些小的问题利用递归求解,治(conquer)是将分的阶段得到的各答案"修补"在一起,即分而治之。直接看代码吧,为了能清晰的了解递归的过程,笔者加了很多不必要的输出。import java.util.Arrays;public class MergeSort { //归并排序 public static void

2020-07-24 11:37:12 517

原创 Java实现快速排序

public class QuickSortTest { public void quickSort(int[] arr, int left, int right) { if(left > right) return; int key = arr[left]; //数组第一个元素作为key System.out.println("key = " + key); int i = left, j = right; while(i < j) { //从右往左找到第一个

2020-07-18 20:36:11 149

转载 对象实体和对象引用的区别

初学Java时,在很长一段时间里,总觉得基本概念很模糊。后来才知道,在许多Java书中,把对象和对象的引用混为一谈。可是,如果我分不清对象与对象引用,那实在没法很好地理解下面的面向对象技术。把自己的一点认识写下来,或许能让初学Java的朋友们少走一点弯路。为便于说明,我们先定义一个简单的类:class Vehicle {int passengers;int fuelcap;int mpg;}有了这个模板,就可以用它来创建对象:Vehicle veh1 = new Vehicle();通常把

2020-07-17 17:55:23 2451 3

原创 LeetCode#206#21#83|链表递归

这几个LeetCode的题目都可以通过递归来解决链表问题,汇总记下。#206反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL public ListNode reverseList(ListNode head) { //1.递归 //递归结束的条件 if(head == null || head.next == null) return head;

2020-07-16 22:35:41 109

原创 LeetCode#19 删除链表的倒数第N个节点|哑结点

题目描述给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。分析目的是要找到目标节点的前一个节点,但是头结点没有前一个节点,因此设置一个哑结点。定义两个指针p和q,p向前移动n+1步后,此时p和q之间正好相隔了n个节点。同时移动两个节点,当p指向链表最后的null时,q正好指向目标

2020-07-16 22:24:15 137

原创 javap常用指令

javap -v x.class,输出行号、本地变量表信息、反编译汇编代码,当前类用到的常量池等信息。javap -l x.class,输出行号和本地变量表信息。javap -c x.class,对当前class字节码进行反编译生成汇编代码。...

2020-06-27 22:55:21 114

原创 LeetCode#680 验证回文字符串Ⅱ|双指针

题目描述给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。示例 1:输入: “aba”输出: True示例 2:输入: “abca”输出: True解释: 你可以删除c字符。注意:字符串只包含从 a-z 的小写字母。字符串的最大长度是50000。分析本题的关键是可以删去一个字符,利用双指针,一个指针从头向尾扫描,一个指针从尾向头扫描。指针扫描过的元素一定是...

2020-04-23 17:23:24 98

原创 LeetCode#345 反转字符串中的元音字母|Java HashSet和HashMap|双指针|String字符串和字符数组

1. 知识拓展1.1 HashSet和HashMap1.1.1 HashSetHashSet是实现Set< E >接口的一个实体类,数据以哈希表的形式存放,特点是不允许有重复元素且无序存放元素。既然是实现了Set< E >接口,那Set< E >接口的特性是什么呢?Set接口继承了Collection接口,故包含Collection接口的所有方法。无...

2020-04-23 01:17:20 245

原创 LeetCode#633 Sum of Square Numbers平方数之和|双指针

运行结果

2020-04-19 23:20:48 148

原创 LeetCode#167 Two Sum II - Input array is sorted两数之和 II - 输入有序数组|双指针

题目描述给定一个已按照升序排列的有序数组,找到两个数使得它们相加之和等于目标数。函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。说明:返回的下标值(index1 和 index2)不是从零开始的。你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。示例:输入: numbers = [2, 7, 11, 15], t...

2020-04-18 17:12:24 121

原创 Java命名规范

Java命名规范1.项目名全部小写,多个单词用“-”分隔2.包名全部小写3.类名首字母大写,其余组成词首字母均大写4.变量名、方法名首字母小写,若由多个单词组成,则除首字母外的其余单词首字母均大写5.常量名全部大写,若由多个单词组成用“_”分隔6.所有命名规范遵循以下规则名称只能由字母、数字、下划线、$符合组成不能以数字开头不能使用Java中的关键字坚决不允许出现中文及拼音命...

2020-04-18 15:03:22 108

原创 LeetCode#20 Valid Parentheses有效的括号|Java中栈的基本操作

题目描述给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出: true示例 3:输入: “(]”输出: false示例 4:输入:...

2020-02-25 17:20:58 107

原创 LeetCode#14 Longest Common Prefix最长公共前缀

题目描述编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。说明:所有输入只包含小写字母 a-z 。题目分析将输入的字符串保存在字符串数组中,依次比较...

2020-02-24 23:09:41 112

原创 LeetCode#12 Integer to Roman整数转罗马数字

题目描述罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即为两个并列的...

2020-02-21 16:13:02 125

原创 LeetCode#13 Roman to Integer罗马数字转整数

题目描述Roman numerals are represented by seven different symbols: I, V, X, L, C, D and M.Symbol ValueI 1V 5X 10L 50C 100D ...

2020-02-21 11:10:00 141

原创 LeetCode#9 Palindrome Number 回文数

题目描述Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.Example 1:Input: 121Output: trueExample 2:Input: -121Output: falseExplan...

2020-02-20 18:36:59 97

原创 LeetCode#7 Reverse Integer整数反转

题目描述Given a 32-bit signed integer, reverse digits of an integer.Example 1:Input: 123Output: 321Example 2:Input: -123Output: -321Example 3:Input: 120Output: 21Note:Assume we are dealing wit...

2020-02-18 18:42:18 112

原创 2012北邮网研真题C-IP地址

题目代码//IP地址#include <iostream>#include <string.h>using namespace std;char a[20];int main() { int T; cin >> T; while(T--) { memset(a, 0, sizeof(a)); //把字符数组初始为'\0' '\...

2019-03-23 23:01:38 128

原创 王道机试指南NO.17产生冠军map模板类

时间限制:1s 内存限制:32MB题目描述球赛规则:如果A打败了B,B又打败了C,而A与C之间没有进行过比赛,那么就认为A一定能打败C。如果A打败了B,B又打败了C,而且C又打败了A,那么A,B,C三者都不可能成为冠军。输入输入含有一些选手群,每群选手都以一个整数n(n&lt;1000)开头,后跟n对选手的比赛结果,比赛结果以一对选手名字(中间隔一空格)表示,前者战胜后者。如果n为0,则...

2019-03-08 16:51:35 124

原创 王道机试指南:NO.16深度优先搜索DFS

题目描述有一个N*M的迷宫,包括起点S,终点D,墙X和地面.,0秒时主人公从S出发,每秒能走到四个与其相邻的位置中的一个,且每个位置被行走之后都不能再次走入,问是否存在这样一条路径使主人公在T秒时刚好走到D。样例输入样例输出NOYES题目分析1、不设mark标记数组,则在运行过程中不断的将不可能在结果集中的位置标记为“墙”。2、若起点的坐标和的奇偶性和终点的坐标和不同,但是需...

2019-03-05 15:52:33 195

原创 王道机试指南:NO.15汉诺塔III&递归

时间限制:1s 内存限制:32MB题目描述不允许直接从最左(右)边移到最右(左)边(每次移动一定是移到中间杆或从中间杆移出),也不允许大盘放在小盘上面。问现有N个圆盘,至少多少次移动才能把这些圆盘从最左边移到最右边。输入包含多组数据,每次输入一个N值(1 &lt;= N &lt;= 35)。输出对于每组数据,输出移动最小的次数。样例输入1312样例输出226531440...

2019-03-04 20:05:18 152

原创 王道机试指南:NO.14最短路径问题Dijkstra算法

时间限制:1s 内存限制:128MB题目描述n个节点m条边,每条边都有长度d和花费p,给出起点S和终点T,要求输出起点到终点的最短距离及其花费,如果最短距离有多条路线,则输出花费最少的。输入输入n,m,点的编号是1~n,然后m行,每行4个数。a,b,d,p,表示a和b之间有一条边,且其长度为d,花费为p。最后一行为两个数,S,T,S为起点,T为终点。n和m为0时输入结束。(1 &lt; ...

2019-03-03 11:19:13 404

原创 王道机试指南NO.13并查集&memset的特殊注意点

题目要求有10000000个小朋友,他们之中有N对好朋友,且朋友关系具有传递性:若A和B是朋友,B和C是朋友,则认为A和C也是朋友。在给出N对朋友关系后,找出一个最大(人数最多)的集合,该集合中任意两人之间都是朋友或者该集合中只有一个人,输出该最大人数。样例输入41 23 45 61 641 23 45 67 8样例输出42题目分析刚开始我用的memset初始化s...

2019-03-02 18:18:36 132

原创 考研机试:拓扑排序

//拓扑排序 邻接链表 #include &lt;iostream&gt;#include &lt;vector&gt; //模板 #include &lt;queue&gt; //模板 using namespace std;vector&lt;int&gt; edge[501];queue&lt;int&gt; Q;int main(){ int n, m; int d...

2019-03-02 15:03:01 132

原创 考研机试:网络的核Floyd算法

题目分析1、Floyd算法可以解决多源最短路径的问题,但是时间复杂度较高O(n3)。图中节点个数在100以下,使用Floyd不会超时。2、用邻接矩阵表示即为每一行元素的和,找出最小值即可。代码//图中节点个数在100以下,使用Floyd就不会超时#include &lt;iostream&gt;using namespace std;int main(){ int a[55]...

2019-03-01 09:57:02 254

原创 王道机试指南NO.12栈的应用之简单计算器

时间限制:1s 内存限制:32MB题目描述读入一个只包含+,-,*,/的非负整数计算表达式,计算该表达式的值。输入测试输入包含若干测试用例,每个测试用例占一行,每行不超过200个字符,整数和运算符之间用一个空格分隔,没有非法表达式。当一行中只有0时输入结束,相应的结果不要输出。输出对每个测试用例输出1行,即该表达式的值,精确到小数点后2位。样例输入1 + 24 + 2 * 5 -...

2019-02-28 16:40:13 162

原创 考研机试:统计节点个数

时间限制:1000ms 内存限制:65536KB题目描述给出一棵有向树,一共N(1 &lt; N &lt;= 1000)个节点,如果一个节点的度(入度+出度)不小于它所有儿子以及它父亲的度(如果存在父亲或儿子),则称这样的节点为p节点,现要求统计p节点的个数。输入要求第一行为数据组数T(1 &lt;= T &lt;= 100)每组数据第一行为N表示树的节点数,后面为N-1行,每行两个数x...

2019-02-27 10:03:13 311

原创 王道机试指南NO.11素数筛法

时间限制:1s 内存限制:32MB题目描述输入一个整数n(2 &amp;lt;= n &amp;lt;= 10000),要求输出所有从1到这个整数之间(不包括1和这个整数)各位为1的素数,如果没有输出-1。输入输入有多组数据。每组一行,输入n。输出输出所有从1到这个整数之间(不包括1和这个整数)各位为1的素数(素数之间用空格隔开,最后一个素数后面没有空格),如果没有则输出-1。样例输入100样...

2019-02-26 15:49:02 151

原创 王道机试指南NO.10素数判定

时间限制:1s 内存限制:32MB题目描述给定一个数n,要求判断其是否为素数(0,1,负数都是非素数)。输入测试数据有多组,每组输入一个数n。输出对于每组输入,若是素数就输出yes,否则输出no。样例输入13样例输出yes题目分析1、若n存在相异于1与其本身的因数且该因数大于sqrt(n),则必存在小于或等于sqrt(n)的因数,所以我们只需测试到sqrt(n)为止。2、...

2019-02-24 16:21:58 155

原创 王道机试指南NO.9最小公倍数

时间限制:1s 内存限制:128MB题目描述给定两个正整数,计算这两个数的最小公倍数。输入输入包含多组测试数据,每组只有一行,包括两个不大于1000的正整数。输出对于每个测试用例,给出这两个数的最小公倍数,每个实例输出一行。样例输入10 14样例输出70题目分析a,b两数的最小公倍数为两数的乘积除以他们的最大公约数。求最大公约数详见:https://blog.csdn.n...

2019-02-24 15:04:55 148

原创 王道机试指南NO.8最大公约数

时间限制:1s 内存限制32MB题目描述输入两个正整数,求其最大公约数。输入测试数据有多组,每组输入两个正整数。输出对于每组输入,请输出其最大公约数。样例输入49 14样例输出7题目分析若a,b全为零,则它们的最大公约数不存在;若a,b其中之一为零,则它们的最大公约数为a,b中非零的那个;若a,b都不为零,则使新a=b,新b=a%b;重复该过程。欧几里得算法递归形式/...

2019-02-24 10:28:45 152

原创 王道机试指南NO.7今年暑假不AC-贪心算法

时间限制:1s 内存限制:128MB题目描述看尽可能多的完整节目输入输入数据包含多个测试实例,每个测试实例的第一行只有一个整数n(n &lt;= 100),表示喜欢看的节目总数,然后是n行数据,每行包括两个数据Ti_s,Ti_e(1 &lt;= i &lt;= n),分别表示第i个节目的开始和结束时间,为简化问题,每个时间用一个正整数表示。n=0表示输入结束,不做处理。输出对于每组测...

2019-02-23 16:31:09 232

原创 王道机试指南NO.6排版题叠筐

时间限制:1s 内存限制:128MB题目描述把一个个大小差一圈的筐叠上去。使得从上往下看时,边筐花色交错。输入输入一个三元组,分别是外筐尺寸n,(n为满足0 &lt; n &lt; 80的奇整数),中心花色字符,外筐花色字符,后两者都为ASCII可见字符。输出输出叠在一起的筐图案,中心花色与外筐花色字符从内层起交错相叠,多筐相叠时,最外筐的角总是被打磨掉。叠筐与叠筐之间应有一行间隔。...

2019-02-22 15:47:52 193

原创 王道机试指南NO.5Sort&Hash应用

时间限制:1s 内存限制:128MB题目描述给n个整数,请按从大到小的顺序输出其中前m大的数。输入每组测试数据有两行,第一行有两个数n,m(0 &amp;lt; n,m &amp;lt; 1000000),第二行包含n个各不相同,且都处于区间[-500000,500000]的整数。输出对每组测试数据按从大到小的顺序输出前m大的数。样例输入5 33 -35 92 213 -644样例输出213...

2019-02-21 22:34:20 180

C++实现伽马函数.zip

C++实现伽马函数代码,是根据伽马函数的原始定义公式实现,并不是依据递推公式实现。结果的精度有限,欢迎有需要的网友下载学习。

2020-08-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除