算法
一把健
专硕如何在中山大学毕业呢?
展开
-
算法:n后问题_局部搜索算法
n后问题_局部搜索算法题目局部搜索解n皇后,并测试n的极限回溯法难以求解更大规模的n皇后问题,但是基于概率的局部搜索算法可以解决一定规模上的 n 皇后问题思路根据课件上的局部搜索算法思路,n皇后具体流程为:随机将 N 皇后分布在棋盘上,并保证每行每列仅有一个皇后计算皇后间的冲突数 conflicts,注意这里只需要计算斜线的冲突,行列不需要如果冲突为0则转(6)对于棋盘上的任意两个皇后,交换位置,如果交换后冲突减少,则接受交换,更新冲突数 conflicts如果陷入了局部极小,即交换了原创 2020-11-28 19:42:55 · 810 阅读 · 0 评论 -
算法:最优二叉搜索树
算法设计第五次作业part21.纸面题:对最优二叉树和矩阵连乘两种算法验证四边形法则,如果符合四边形法则则举几个正例,如果不符合则举几个反例四边形法则i<i‘ j<j‘w(i,j)+w(i‘,j‘)≤w(i‘,j)+w(i,j‘)i < i^`\ \ \ j < j^` \\w(i,j) + w(i^`,j^`) \le w(i^`,j) + w(i,j^`)i<i‘ j<j‘w(i,j)+原创 2020-10-23 15:00:12 · 1492 阅读 · 0 评论 -
算法:构造全部数量的二叉搜索树
算法设计第五次作业part11.给出一个数组,算出其能构成的不同二叉搜索树结构的数量package mainimport ( "fmt" "sort")/**1.给出一个数组,算出其能构成的不同二叉搜索树结构的数量*/type array []intfunc (a array) Len() int { return len(a)}func (a array) Less(i, j int) bool { return a[i] < a[j]}func (a原创 2020-10-23 14:58:04 · 335 阅读 · 0 评论 -
算法:最长公共子序列
10-8算法实验报告最长公共子序列题目:输出两个字符串的最长公共子序列要求1:不使用辅助数组// 要求1:不使用辅助数组func LongestSubsequence(x, y string) string { n, m := len(x), len(y) // 初始化数组切片 // go 自动初始化数组元素为 0 c := make([][]int, n+1) for i := 0; i <= n; i++ { c[i] = make([]int, m+1) } //原创 2020-10-23 14:56:22 · 427 阅读 · 0 评论 -
算法:线性时间选择
9-29算法实验报告1. 随机时间选择-求算法复杂度给定线性序集中n个元素和一个整数k,1≤k≤n,要求找出这n个元素中第k小的元素template<class Type>Type RandomizedSelect(Type a[],int low,int high,int k){ if (low==k) return a[p]; int i=RandomizedPartition(a,low,high), j=i-low+1; if (原创 2020-10-23 14:54:30 · 1771 阅读 · 0 评论 -
算法:合法括号组合_正整数n的划分
9-22算法实验报告1. 给出n,输出n对合法的括号组合yupackage mainimport "fmt"/**给出n,打印出n对合法的括号对组合,例如n=3,输出如下: "((()))", "(()())", "(())()", "()(())", "()()()" */func printBrackets(n int) { printStrWithBrackets(n,n,"")}// 递归:左括号 和 右括号func printStrWithBr原创 2020-10-14 17:53:48 · 339 阅读 · 0 评论 -
算法:斐波那契数列通项公式推导
9-17_算法实验报告斐波那契数列已知:f(n)={f(n−1)+f(n−2);(n>2)1;(n=1,n=2)f(n) = \begin{cases}f(n-1) + f(n - 2);(n > 2)\\1;(n = 1, n = 2)\end{cases}f(n)={f(n−1)+f(n−2);(n>2)1;(n=1,n=2)请使用 生成函数法 求该函数的时间复杂度。解答对于斐波那契数列,已知:f(n)=f(n−1)+f(n−2);(n>2)f(n) =原创 2020-10-14 17:46:48 · 3242 阅读 · 1 评论 -
数据结构 - 树(二叉树 - 平衡二叉 - 红黑 - B/B+ - WIP)
树????参考资料文章中大部分图片出自此处,多为以下文章的概括整理!Wiki:维基百科:树_数据结构CSDN:浅谈AVL树,红黑树,B树,B+树原理及应用平衡二叉搜索树(AVL树)的原理及实现源代码红-黑树youtube:Lin Clark - A Cartoon Intro to Fiber - React Conf 2017百度百科:二叉搜索树Chrome V8...原创 2019-11-18 20:48:12 · 332 阅读 · 0 评论 -
中山大学_预推免_机试
机试流程与内容流程晚上 6.30 到 9.30 模拟机试,机试题目是 此次夏令营 的真题。第二天 早上 9.00 到 12.00 正式机试内容时长: 三个小时题量: 十道题,每题满分 100 分,按通过样例给分。(优先做会做的语言: C 或 C++编程环境: 代码提交有 中山大学 提供的 OJ,但是越到后期提交队列越长,wait 和 judge 的时间也越长本地提供 ide,可以...原创 2019-10-04 23:02:43 · 4318 阅读 · 1 评论 -
南京大学_计算机系_夏令营_机试
南大 计算机 机试1. 输入一串数字,移除 k 个数字,数字相对位置不变,使得剩下的数字组成最小的数输入:123213输出:11输入:121输出:12. 有 n 个男孩, m 个女孩,他们站一排,要求 至多 K 个男孩相邻,问有多少种解法,结果最后还要 取 1007 的模BOY1 BOY2 GIRL1 GIRL2BOY2 BOY1 GIRL2 GIRL1是同一种解法...原创 2019-07-13 19:20:29 · 1632 阅读 · 0 评论 -
LeetCode_DP_回文子串_C++
647. 回文子串题目描述给定一个字符串,你的任务是计算这个字符串中有多少个回文子串。具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被计为是不同的子串。示例 1:输入: “abc”输出: 3解释: 三个回文子串: “a”, “b”, “c”.示例 2:输入: “aaa”输出: 6说明: 6个回文子串: “a”, “a”, “a”, “aa”, “aa”,...原创 2019-06-21 17:18:12 · 244 阅读 · 0 评论 -
牛客_BFC_I_Wanna_Go_Home_C++
牛客_BFC_I_Wanna_Go_Home_C++_by_一把健题目描述 The country is facing a terrible civil war----cities in the country are divided into two parts supporting different leaders. As a merchant, Mr. M does not pay ...原创 2019-06-14 00:01:10 · 370 阅读 · 4 评论 -
LeetCode_初始算法_javascript_字符串_总结
前言初始算法中的字符串部分挑选之后有几题值得记录的,这里拿出来说明记录一下。对于字符串的重点在于正则表达式的运用。1.有效的字母异位词给定两个字符串s和t,编写一个函数来判断t是否是s的一个字母异位词。示例1:输入: s = "anagram", t = "nagaram"输出: true示例 2:输入: s = "rat", t = "car"输...原创 2019-02-25 23:27:08 · 115 阅读 · 0 评论 -
LeetCode_初始算法_javascript_数组_总结
编写目的准备循序渐进地刷算法题和数据结构,每天2到3条算法题,几天时间将初始算法的数组篇搞定,这里将算法题总结一遍还有把自己的一些知识盲区挑出来,加深印象。1.从排序数组中删除重复元素这里题干里面也有说,不需要考虑超出范围的数组后的项。而且遍历的数组是已经排好序的数组,所以解题思路为:从前往后遍历数组,遇到重复的忽略,遇到不同的将值放在已经遍历的前项上,重复此操作,直到遍历完毕。...原创 2019-01-24 15:03:57 · 167 阅读 · 0 评论