算法
文章平均质量分 51
TXW--CXY博客
这个作者很懒,什么都没留下…
展开
-
结尾非零数的奇偶性(python)
点击进入题目原地址题目描述:给你一个正整数列表 L, 判断列表内所有数字乘积的最后一个非零数字的奇偶性。如果为奇数输出1,偶数则输出0.。例如:L=[2,8,3,50]则输出:0代码:a = 1for n in L: while n % 10 == 0: n/=10 b = n % 10 a *= b while a % 10 == 0: a/=10 a %= 10if a % 2 == 0: print原创 2020-07-25 22:17:05 · 487 阅读 · 0 评论 -
结尾0的个数(python)
结尾0的个数点击进入题目原地址题目描述:给你一个正整数列表 L, 输出L内所有数字的乘积末尾0的个数。(提示:不要直接相乘,数字很多,相乘得到的结果可能会很大)。例如: L=[2,8,3,50],则输出:2代码:a = 0b = 0for one in L: while one % 2 == 0: a += 1 one = one / 2 while one % 5 == 0: b += 1 one = one / 5if a >= b:原创 2020-07-25 22:11:03 · 1031 阅读 · 0 评论 -
快排(C语言)
int partition(int s[],int low,int high){ int pivot=s[low]; while(low<high){ while(low<high&&s[high]>=pivot)--high; s[low]=s[high]; while(low<high&&s[low]<=pivot...原创 2020-04-15 22:18:00 · 557 阅读 · 0 评论 -
双向冒泡排序(C语言)
void bubblesort(int s[],int len){ int left=0,right=len-1,temp; while(left<right){ for(int i=left;i<right;++i){ if(s[i]>s[i+1]){ temp=s[i]; s[i]=s[i+1]; s[i+1]=temp; } ...原创 2020-04-15 21:49:49 · 2130 阅读 · 3 评论 -
TwoSum(java)
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。public static void main(String[] args) { int[] s= {2, 7, 11, 15}; System.out.println(Arrays.toString(TwoSum(s, 9)));}public stati...原创 2020-04-05 21:24:49 · 272 阅读 · 0 评论 -
只出现一次的数字(C语言)
求数组中只出现一次的数字(其余数字均出现两次)public static int singleNumber(int[] nums) { if (nums.length==0)return 0; int s=0; for(int num:nums)s^=num; return s;} public static void main(String[] ...原创 2020-04-05 21:01:31 · 299 阅读 · 0 评论 -
Z字形变换(java)
将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。输入: s = "LEETCODEISHIRING", numRows = 3输出: "LCIRETOESIIGEDHN"public static void zChange(String s,int n) { String[] temp=new String[s.length()]; for(int i=0;i...原创 2020-04-05 20:28:27 · 507 阅读 · 0 评论 -
找出所有满足条件且不重复的三元组(C语言)
给你一个包含 n 个整数的数组nums,判断nums中是否存在三个元素 a,b,c ,使得a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。void bubbleSort(int s[],int len){ for(int i=0;i<len-1;++i){ bool flag=false; for(int j...原创 2020-04-05 16:26:56 · 2392 阅读 · 0 评论 -
与7无关的数(java)
与7无关的数 一个数能被7整除或十进制数的个位数数字是7则和7相关 求N(N<100)的所有与7无关的正整数的平方和public static boolean judge(int x) { if(x%7==0)return true; while(x!=0) { if(x%10==7)return true; x/=10; } return false;}publ...原创 2020-03-26 22:28:11 · 952 阅读 · 0 评论 -
求逆序数(C语言)
int reverse(int s){ int sum=0; while(s!=0){ sum*=10; sum+=(s%10); s/=10; } return sum;}int main(){ int s,x; scanf("%d",&s); while(s!=-1){ printf("%d\r\n",reverse(s)); scanf("%...原创 2020-03-26 21:26:03 · 10965 阅读 · 2 评论 -
全排列(java)
回溯法public static void main(String[] args) { int[] arr= {1,2,3,4}; quanpailie(arr,0);}public static void quanpailie(int[] arr,int n) { int length=arr.length; if(n>=length) { for (int i =...原创 2020-03-26 20:56:42 · 113 阅读 · 0 评论 -
求最长子串长度(java)
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。采用滑动窗口的方法public static int lengthOfLongestSubstring(String s) { int ans=0; //map记录扫描后已存在的字符以及字符在原字符串序列中的位置 Map<Character, Integer> map = new HashMap<...原创 2020-03-26 20:36:30 · 717 阅读 · 0 评论 -
找出这两个有序数组的第k个数(C语言)
#include <stdio.h>#include <limits.h>int findK(int a[],int len_a,int begin_a,int b[],int len_b,int begin_b,int k){ //a/b数组无元素可查 直接返回b/a数组中的第begin_b/begin_a+k个元素值 if(begin_a>=len_...原创 2020-03-26 19:42:29 · 312 阅读 · 0 评论 -
Catch That Cow(C语言)
农夫要抓奶牛。 已知N(农夫的位置)K(奶牛的位置)(在一条直线上)。农夫有三种移动方法(奶牛不会动):1、向前走一步,耗时一分钟。2、向后走一步,耗时一分钟。3、向前移动到当前位置的两倍N*2,耗时一分钟。求农夫抓到奶牛的最少时间。深度优先搜索:int bfs(int n,int k){ bool s[2*k+1]; for(int i=0;i<k+1;i+...原创 2020-03-20 22:28:17 · 721 阅读 · 0 评论 -
2的幂次方(java)
public static String get(int x) { if(x==2) { return "2"; }else if(x==1) { return "2(0)"; } int i=0; while(!(Math.pow(2, i)<=x&&Math.pow(2, i+1)>x))++i; if(x==Math.pow(2, i)) ...原创 2020-03-19 21:32:27 · 1802 阅读 · 0 评论 -
汉诺塔(C语言)
代码(模拟过程)void move(char x,char y){ printf("%c->%c\n",x,y);}void hanoi(int n,char a,char b,char c){ if(n==1)move(a,c); else{ hanoi(n-1,a,c,b);//将n-1个圆盘从A移动到B move(a,c);//将一个圆盘从A移动到C ha...原创 2020-03-18 19:51:50 · 367 阅读 · 0 评论 -
实现快速排序(C语言)
采用分治思想#include <stdio.h>#include <stdlib.h>int partition(int s[],int low,int high){ int pivot=s[low]; while(low<high){ while(low<high&&s[high]>=pivot)--high; s...原创 2020-03-14 20:12:36 · 201 阅读 · 0 评论 -
实现一元多项式的加法运算(C语言)
输入:第一个一元多项式A; 第二个一元多项式B。 以(0,0)作为输入结束。输出:多项式A和多项式B的和。样例输入5,3 7,8 9,15 0,02,0 6,3 -7,8 0,0样例输出2x^0+11x^3+9x^15#include <stdio.h>#include <stdlib.h>typedef struct LinkNode...原创 2020-03-14 16:33:33 · 8286 阅读 · 1 评论 -
JAVA 小数
HALF_UP:最近数字舍入(5进)。这是我们最经典的四舍五入。HALF_DOWN:最近数字舍入(5舍)。在这里5是要舍弃的。BigDecimal b=new BigDecimal(1.125);System.out.println(b.setScale(2, RoundingMode.HALF_UP));//1.13形式取整DecimalFormat df=new DecimalFormat("...原创 2018-05-24 12:02:55 · 618 阅读 · 0 评论 -
蓝桥 碱基 java b组 国赛
碱基生物学家正在对n个物种进行研究。其中第i个物种的DNA序列为s[i],其中的第j个碱基为s[i][j],碱基一定是A、T、G、C之一。生物学家想找到这些生物中一部分生物的一些共性,他们现在关注那些至少在m个生物中出现的长度为k的连续碱基序列。准确的说,科学家关心的序列用2m元组(i1,p1,i2,p2....im,pm)表示,满足:1<=i1<i2<....<im<...原创 2018-04-22 22:40:15 · 675 阅读 · 0 评论