图的直径 #include<iostream>#include<vector>using namespace std;class Node{public: Node(int i, int w) :index(i), weight(w) { } int index; int weight;};
树状数组(求前缀和、逆序对) 求前缀和:(求数组1~k个元素的和)#include<iostream>using namespace std;//由原数组维护一个对应的树状数组void build(int a[],int c[],int N) //原数组为a,大小为N{ for (int i = 0; i < N; i++) { int k = i+1; //让k从1开始 ...
排序算法——归并 递归实现:#include<iostream>using namespace std;void printArr(int *arr, int length) //打印数组{ for (int i = 0; i < length; i++) { cout << arr[i] << " "; } cout << e...
大数乘——“万进制” 网上看到了一种“万进制”的思路,时间、空间上都能节省。这种思路就是充分利用int类型所能存数的范围,如果之前写大数乘,我是将每一位放在int数组的每个元素,比如:174596332,放在数组中为int a[] = {1,7,4,5,6,3,3,2} ;然后拿数组每个元素从低位到高位乘另一个数,处理进位。“万进制”不以一位(十进制)分割数了,而是4位,那么上面的数在数组中就可以存为:int ...
并查集(图论) 并查集包括两个操作:合并集合(union)、查找代表元(find)。参考大神的帖子简单来说呢,就是找朋友、划分朋友圈的过程。比如现在有100个人,我们已知一些人是朋友关系,例如已知张三和赵四是朋友,赵四和王五是朋友,那么朋友的朋友也是朋友,自然而然,张三和王五也是朋友了。有些人是不管拖了多少中间人都不可能建立朋友关系的人,那就不是一个朋友圈的。怎么判断两个人是不是一个朋友圈的呢?我们可以在...
2018JavaA组 1、分数多算几个就能找到规律:前n项和Sn = (2^n -1) / 2^(n-1)。public class Main{ public static void main(String args[]) { int n=20; int fenZi = (int)Math.pow(2, n)-1; int fenMu = (int)Math.pow(2, n-1); ...
动态规划 动态规划问题记住:一般用递归分析(从上往下分析),然后用循环实现(从下往上计算)。动态规划类问题,我们一定可以找出一个递推式,比如青蛙跳台阶:一只青蛙一次可跳1级台阶,也可以跳2级台阶,那么青蛙跳上n级台阶有多少种跳法。从上往下分析:在第n级台阶的青蛙,上一步可以是从n-1级跳过来的,也可以是由n-2级跳过来的,如果记f(n)为青蛙到n级台阶的跳法,那么有f(n)=f(n-1)+f(n-2)...
2014年JavaA组 1.猜年龄暴力枚举。注意题中信息:年龄差不超8岁public class Main{ public static void main(String args[]) { for(int i=1;;i++) { for(int j=i+1;j<=i+8;j++) { if((i*j)/(i+j)==6 && (...
引用传递 要点:在调用函数时发生了引用传递,注意找函数中有没有对形参(此引用)的重新赋值操作!(这里赋值指的是引用赋值引用)1、什么时候会发生引用传递,传数组,传类(不是基本数据类型),传指针(对C来说,Java没有)2、发生引用传递时,假设实参为A,形参为B,实参A所分配的内存空间为spaceA,此时B也指向spaceA这块空间,也就是形参实参共指向。那么在函数中,通过B改变spaceA空间中的值,...
时间复杂度和空间复杂度 时间复杂度和空间复杂度是对立的关系,也就是只能保证其一,以空间换时间或者以时间换空间。比如数组和链表就是很好的例子,数组在使用前需要开辟足够大的空间,防止数据量大的情况,空间效率低,但数组开辟的是内存中一块连续的空间,在取数据时,只要按顺序依次往后取即可,时间效率高。而,链表不是在创建的时候一次性开辟内存的,而是每添加一个节点,开辟一次内存,没有空闲的内存,空间效率高,但由于链表开辟的内存不是...
2013年JavaA组 1. 世纪末的星期Calendar类需要注意的两个点:(1)Calenda.MONTH要比实际月份小1。(2)Calendar.DAY_OF_WEEK,1代表星期天。import java.util.Calendar;import java.util.Scanner;public class Main{ public static void main(String args[])...
java——36选7 幸运号 从1到36里随机摇号,摇出7个幸运号(不重复)import java.util.Random;public class Test{ public static void main(String args[]) { int data[] = new int[7]; int foot=0; Random rand=new Random(); while(f...
Java——继承 由父类派生出子类,即子类继承父类。子类继承了父类中的所有属性及方法,即使子类不进行扩充,也能维持父类的功能。Java中不支持多重继承,但支持多层继承,多重继承是指A继承B和C,很明显也不符合实际,一个儿子不能有两个爸爸,而多层继承的概念比较像祖辈传承,A继承B,B继承C,…子类中可以通过super.属性和super.方法()获得 父类中的非私有属性和方法。而对于父类中的私有属性和方法,只能...
Java中链表的实现 用了外部类Link来管理,用内部类Node来实现一些功能实现的功能:1、在链表末尾添加数据节点——add()2、获得链表长度——size()3、判断链表是否为空——isEmpty()4、判断某一数据是否存在——contains(数据)5、根据索引获得指定位置处的数据——get(index)6、修改指定索引处的数据,(替换)——repalce(数据,index)7、从链表里删除数据(...
5GNR中CORESET、CCE、REG的关系 5GNR中PDCCH的数据全部放在CORESET中,但不是CORESET中全部充满PDCCH数据,因为PDCCH是由若干个CCE聚合而成,只有CCE中才有PDCCH数据。上面的图是一个CORESET,横轴是时间上所占的符号,纵轴是频域所占的RB数。CORESET中是所有的RB中索引为1,5,9的RE均放DMRS信号。通过下面的公式计算CCE起始的所有可以位置:从计算的CCE起始位置中选...