ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

《算法笔记》知识点总结

2021-08-02 21:04:37  阅读:182  来源: 互联网

标签:知识点 return int up 笔记 down 算法 abs maxn


1.素数
当只需要判断某个数是否是素数的时候

bool isPrime(int x)
{
	for(int i = 2; i * i <= n; i++)
	{
		if(x % i == 0)
		return false;
		}
	return true;
}

当需要输出多个素数的时候:

bool notPrime[maxn];
int Prime[maxn];
int pnum = 0;
void findPrime( )
{
	for(int i = 2; i < maxn; i++)
	{
		if(notPrime[i] == false)
		{
			Prime[pnum++] = i;
			for(int j = i+i; j < maxn; j++)
			notPrime[j] = true;
			}
	}
}//从前找没有访问过的数,将其倍数均设置为true,表示非素数

2.找最大公约数

int gcd(int a, int b)
{
	if(b == 0)
	return a;
	else
	return gcd(b, a % b);
}

3.分数的计算

struct fraction{
	int up, down
}; 
fraction reduction(fraction a)
{
	if(a.down < 0)
	{
		a.down = -a.down;
		a.up = -a.up;
	}
	if(a.up == 0)
	a.down == 1;
	else
	{
		int d = a.up /= gcd(abs(a.up), abs(a.down));
		a.up /= d;
		a.down /= d;
	}
	return a;
}//简化是为了方便分数的加减 
void print(fraction a)
{
	if(a.down == 1)
	printf("%d", a.up);
	else if(abs(a.up) > abs(a.down))
	printf("%d%d/%d", a.up/a.down, abs(a.up)%a.down, a.down);
	else
	printf("%d/%d", a.up, a.down);
}//分数以三种形式输出,整数,假分数,真分数的形式 

标签:知识点,return,int,up,笔记,down,算法,abs,maxn
来源: https://blog.csdn.net/weixin_45486992/article/details/119333537

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有