`
ybhuxiao
  • 浏览: 193323 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

陆续收集一些简单算法的实现

    博客分类:
  • java
阅读更多
本文算法均从网络中收集
	/**
	 * <p>功能描述:求一个四位数,使它等于它的四个数字和的四次方</p>
	 * 
	 * @param args
	 * @author 胡晓 <BR> kskr@qq.com <BR>
	 * 时间:2010-3-17 上午07:36:34 <BR>
	 */
	public static void main(String[] args) {
		int a, b, c, d, e;
		for (int i = 1000; i < 10000; i++) {
			a = i % 10;
			b = i / 10 % 10;
			c = i / 100 % 10;
			d = i / 1000;
			e = a + b + c + d;
			if (e * e * e * e == i) {
				System.out.println("满足条件的数字:" + i);
			}
		}
	}


	/**
	 * <p>功能描述:满足这个条件的五位数,abcdef = a^5 + b^5 + c^5 + d^5 + e^5</p>
	 * 
	 * @param args
	 * @author 胡晓 <BR> kskr@qq.com <BR>
	 * 时间:2010-3-17 上午07:46:32 <BR>
	 */
	public static void main(String[] args) {
		int m, s, a, b, c, d, e;
		// s = Integer.parseInt(args[0]);
		s = 99999;
		if (s >= 10000 && s <= 99999) {
			System.out.println("小于该数的梅花数有:");
			for (m = 10000; m < s; m++) {
				a = m % 10;
				b = m / 10 % 10;
				c = m / 100 % 10;
				d = m / 1000 % 10;
				e = m / 10000;
				if (m == a * a * a * a * a + b * b * b * b * b + c * c * c * c * c + d * d * d * d * d + e * e * e * e * e) {
					System.out.println(m);
				}
			}
		}
	}


	/**
	 * <p>功能描述:输出100内的素数</p>
	 * 
	 * @param args
	 * @author 胡晓 <BR> kskr@qq.com <BR>
	 * 时间:2010-3-17 上午07:57:54 <BR>
	 */
	public static void main(String[] args) {
		int s = 0;
		int i;
		for (i = 0; i <= 100; i++) {
			int j;
			for (j = 2; j <= i; j++) {
				if (i % j == 0)
					break;
			}
			if (i == j)
				System.out.println(i);
		}
	}



	public static void main(String[] args) {
		System.out.println(isPrime(97));
	}

	/**
	 * <p>功能描述:判断是否是素数</p>
	 * 
	 * @param n
	 * @return
	 * @author 胡晓 <BR> kskr@qq.com <BR>
	 * 时间:2010-3-17 上午08:02:56 <BR>
	 */
	public static boolean isPrime(int n) {
		// filte negative, zero, one    
		if (1 >= n) {
			return false;
		}
		// 2 is a prime, stop filter    
		if (2 == n) {
			return true;
		}
		// filter evens 
		if (0 == n % 2) {
			return false;
		}
		// go on filting...    
		for (int a = 3; a <= Math.sqrt(n); a += 2) {
			if (0 == n % a) {
			return false;
			}
		}
		// the rest is all prime, stop filting    
		return true;
	}


	public static void main(String[] args) {
		System.out.println(isPrime(97));
	}

	/**
	 * <p>功能描述:判断是否是素数</p>
	 * 
	 * @param n
	 * @return
	 * @author 胡晓 <BR> kskr@qq.com <BR>
	 * 时间:2010-3-17 上午08:04:55 <BR>
	 */
	public static boolean isPrime(int n) {
		for (int i = 2; i * i <= n; i++) {
			if (n % i == 0)
				return false;
		}
		return true;
	}


	public static void main(String[] args) {
		System.out.println(isPrime(97));
	}

	/**
	 * <p>功能描述:判断是否是素数</p>
	 * 
	 * @param n
	 * @return
	 * @author 胡晓 <BR> kskr@qq.com <BR>
	 * 时间:2010-3-17 上午08:09:48 <BR>
	 */
	public static boolean isPrime(int n){
	    int i ;
	    for(i=2; i <= Math.sqrt(n); i++){
	        if(n%i == 0 ){
	        	break ;
	        }
	    }
	    return i > Math.sqrt(n);
	}



	/*
通常每4年里有3个平年,1个闰年。公历年份是4的倍数的一般是闰年,公历年份是整百数的,必须是400的倍数才是闰年。这是因为地球绕太阳旋转一周的时间,根据精确测定,约为365天5小时48分46秒。按一年365天(平年)计算,累计4年大约少算一天;把这一天加在2月里,这一年就是366天(闰年)。但这样一算,每4年又多算了44分56秒,每400年就要多算3天2小时53分20秒,所以就规定了公历年份是整百数的必须是400的倍数才是闰年。
	*/
	public static void main(String[] args) {
		System.out.println(isLeapYear(1997));
	}

	/**
	 * <p>功能描述:判断是否是闰年</p>
	 * 
	 * @param year
	 * @return
	 * @author 胡晓 <BR> kskr@qq.com <BR>
	 * 时间:2010-3-17 上午08:16:39 <BR>
	 */
	public static boolean isLeapYear(int year) {
		return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
	}


	/*
	约瑟夫环(出圈):是一个数学的应用问题。
	
	已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。

	*/






判断一个数是不是2的N次方,这个是EE出的题,想了半天,java里面有一个Integer.toBinaryString(int i)来转成二进制,如果是2的N次方的话,那么这个数字应该是首位为1,其他位为0。那么该数减一,就所有首位为0,其他位为1,这两个数字按位与,就会得到0。

另外0按位与-1也是0,这个要排除
1 & 0虽然不是上面的规律,但是1 & 0 也是0,所以适用该算法

所以加一个i > 0做判断就够了
	public static boolean testIndicial(int i) {
		return i > 0 && (i & i - 1) == 0;
	}




------------to be continued

兔子,迷宫,汉诺塔,出圈,简单的加解密,SSL
1
2
分享到:
评论

相关推荐

    神经网络算法实现.zip

    神经网络算法实现神经网络算法实现神经网络算法实现神经网络算法实现神经网络算法实现神经网络算法实现神经网络算法实现神经网络算法实现神经网络算法实现神经网络算法实现神经网络算法实现神经网络算法实现神经网络...

    AES-GCM算法实现code

    主要是aes-gcm算法实现的code,详细描述gcm算法的各部分实现过程

    一些简单算法代码

    这里的“一些简单算法代码”集合提供了一些基础但实用的算法实现,旨在帮助初学者更好地理解和应用这些概念。下面我们将深入探讨这些算法及其在实际编程中的应用。 首先,排序算法是计算机科学中最基本的算法之一,...

    典型密码算法C语言实现_附录代码

    典型密码算法及其C语言实现共13章节,详细讲述了一些典型密码算法的算法原理及C语言实现。密码算法包括:序列密码、分组密码、公钥密码和Hash算法。其中序列密码有祖冲之算法,分组密码有DES、3DES和SMS4算法,公钥...

    进程管理和调度的算法实现

    内容描述: (1)设计进程控制块PCB表结构,分别适用于优先权调度算法和时间片轮转调度算法。 PCB结构中一般包括以下信息:进程名、进程优先数(或轮转时间片),进程所占用的CPU时间,进程的状态...通过VC++6.0实现!

    遗传算法实现智能排课系统(python源码).zip

    遗传算法实现智能排课系统(python源码).zip遗传算法实现智能排课系统(python源码).zip遗传算法实现智能排课系统(python源码).zip遗传算法实现智能排课系统(python源码).zip遗传算法实现智能排课系统(python...

    几个推荐算法的java实现

    本项目提供了一些推荐算法的Java实现,包括slopeone、SVD(奇异值分解)以及基于物品邻接的SVD(ItemNeighborSVD)。下面我们将详细探讨这些算法及其在Java中的实现。 1. **slopeone**: - Slope One是一种简单的...

    具有先来先服务算法和最短寻道时间优先算法的磁盘调度算法实现

    磁盘调度算法实现 磁盘调度算法是操作系统中的一种重要算法,用于管理磁盘的读写操作,提高磁盘的存取效率。该算法的主要目的是尽量减少磁头的移动距离,以提高磁盘的读写速度。 在该项目中,我们实现了五种不同的...

    项目实战-朴素贝叶斯算法实现新闻分类源码及数据集.zip

    1、内容概要:本资源主要基朴素贝叶斯算法实现新闻分类,适用于初学者学习文本分类使用。 2、新闻分类源码实现过程:将数据集划分为训练集和测试集;使用jieba模块进行分词,词频统计,停用词过滤,文本特征提取,将...

    毕业设计:最短路径算法实现,Dijkstra算法,双向Dijkstra算法,CH算法,SILC算法.zip

    毕业设计:最短路径算法实现,Dijkstra算法,双向Dijkstra算法,CH算法,SILC算法 毕业设计:最短路径算法实现,Dijkstra算法,双向Dijkstra算法,CH算法,SILC算法 毕业设计:最短路径算法实现,Dijkstra算法,双向...

    各神经网络与算法实现.zip

    各神经网络与算法实现各神经网络与算法实现各神经网络与算法实现各神经网络与算法实现各神经网络与算法实现各神经网络与算法实现各神经网络与算法实现各神经网络与算法实现各神经网络与算法实现各神经网络与算法实现...

    用BP算法实现神经网络.zip

    用BP算法实现神经网络用BP算法实现神经网络用BP算法实现神经网络用BP算法实现神经网络用BP算法实现神经网络用BP算法实现神经网络用BP算法实现神经网络用BP算法实现神经网络用BP算法实现神经网络用BP算法实现神经网络...

    广州大学操作系统课设-设计一个按照优先级调度算法实现处理机调度的程序 含报告

    广州大学操作系统课设-设计一个按照优先级调度算法实现处理机调度的程序 含报告 题目一:设计一个按照时间片轮转法实现处理机调度的程序 虽然该文内容的是题目二,但是题目一和题目二也就调度方式不一样,其他都是...

    算法竞赛入门经典——算法实现.docx

    在竞赛中,通常会提供一些实际问题或挑战,要求参赛者设计和实现最优算法来解决这些问题。 算法竞赛的重要性主要体现在以下几个方面。首先,算法竞赛可以提高参赛者的算法设计和实现能力。在竞赛过程中,参赛者需要...

    matlab实现蚁群算法实现路径规划.zip

    matlab实现蚁群算法实现路径规划.zip 带说明文档matlab实现蚁群算法实现路径规划.zip 带说明文档matlab实现蚁群算法实现路径规划.zip 带说明文档matlab实现蚁群算法实现路径规划.zip 带说明文档matlab实现蚁群算法...

    模型算法大全(20+种常用算法模型+代码实现)

    模型算法大全(20+种常用算法模型+代码实现)模型算法大全(20+种常用算法模型+代码实现)模型算法大全(20+种常用算法模型+代码实现)模型算法大全(20+种常用算法模型+代码实现)模型算法大全(20+种常用算法模型+...

    KNN算法实现鸢尾花数据集分类 C语言实现.zip

    KNN算法实现鸢尾花数据集分类 C语言实现 KNN算法实现鸢尾花数据集分类 C语言实现 KNN算法实现鸢尾花数据集分类 C语言实现 KNN算法实现鸢尾花数据集分类 C语言实现 KNN算法实现鸢尾花数据集分类 C语言实现 KNN...

    贪心算法实现活动安排问题

    贪心算大实现活动安排问题,算法实现使用图形界面动态显示,程序中用到的排序算法为快速排序

Global site tag (gtag.js) - Google Analytics