C语言
抹茶饼
这个作者很懒,什么都没留下…
展开
-
*求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)**
求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)Way1 Java 方法考虑使用&& 逻辑与运算运行时间:13ms占用内存:9312kboolean t=(n>0)&&(sum+=Sum_Solution(n-1))>0;//Java 声明boobean数...原创 2019-07-24 22:55:59 · 281 阅读 · 0 评论 -
选择排序
堆排序#include <stdlib.h>#include <stdio.h>void swap(int k[],int i,int j){ int temp=k[i]; k[i]=k[j]; k[j]=temp;}void heapAdjust(int k[],int s,int n){ int i,temp; te...原创 2019-08-23 17:14:41 · 85 阅读 · 0 评论 -
交换排序
冒泡排序从前往后(从后往前),两两比较,每趟比较可以确定一个元素的位置,时间复杂度为O(n^2),是一个稳定的排序。#include <stdio.h>#include <stdlib.h>void Bubble_Sort(int k[],int n)//稳定的排序算法{ int i,j; for(i=0; i<n-1; i++) { ...原创 2019-08-23 18:53:15 · 102 阅读 · 0 评论 -
插入排序
直接插入排序适用于基本有序或者数量不大的序列,可以适用于顺序存储和链式存储的线性表,时间复杂度为O(n^2),是一个稳定的排序。#include <stdio.h>#include <stdlib.h>void Insert_sort(int a[],int n){ int i,j,temp; for(i=0; i<n-1; i++) ...原创 2019-08-23 19:01:42 · 125 阅读 · 0 评论 -
归并排序
归并排序,使用递归求解的方法#include <stdlib.h>#include <stdio.h>void Merge(int a[],int low, int mid, int high){ //sizeof只有在看到数组定义时才能够测出字节数 // printf("sizeof(a)/sizeof(a[low])= %d\n",(siz...原创 2019-08-24 12:20:26 · 85 阅读 · 0 评论 -
输入一个链表,反转链表后,输出新链表的表头
输入一个链表,反转链表后,输出新链表的表头public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}public class Solution { public ListNode ReverseList...原创 2019-08-23 00:12:43 · 660 阅读 · 0 评论 -
输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构
输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; ...原创 2019-08-23 00:44:20 · 236 阅读 · 0 评论