2024-2-6-复习作业

1>

要求:

源代码:

#include <stdio.h>
#include <stdlib.h>
void output(int arr[],int len)
{
    for(int i=0;i<len;i++)
    {
        printf("%d ",arr[i]);
    }
    puts("");
}
void bubble_sort(int arr[],int len)
{
    for(int i=1;i<len;i++)
    {
        for(int j=0;j<len-i;j++)
        {
            if(arr[j]>arr[j+1])
            {
                int t=arr[j+1];
                arr[j+1]=arr[j];
                arr[j]=t;
            }
        }
    }
    output(arr,len);
}
void select_sort(int arr[],int len)
{
for(int i=0;i<len-1;i++)
	{
		int min=i;
		for(int j=i+1;j<len;j++)
		{
			if(arr[min]>arr[j])
				min=j;
		}
		if(min!=i)
		{
			int t=arr[min];
			arr[min]=arr[i];
			arr[i]=t;
		}
	}
    output(arr,len);
}

void straight_insert_sort(int arr[],int len)
{

	int t,i,j;
	for ( i = 1;i < len;i++)
	{
		t = arr[i];
		for ( j = i - 1;j >= 0 && arr[j] > t;j--)
		{
			arr[j + 1] = arr[j];
		}
		arr[j + 1] = t;
    }
    output(arr,len);
}
//返回基准值下标
int one_sort(int arr[],int low,int high)
{
	//确定基准值
	int key=arr[low];
	//当low==high结束
	//循环low<high
	while(low<high)
	{
		while(low<high&&key<=arr[high])
			high--;
		arr[low]=arr[high];
		//
		//从low开始比较
		while(low<high&&key>=arr[low])
			low++;
		arr[high]=arr[low];
	}
	arr[low]=key;
	return low;
    }
	
//快速排序
void quick_sort(int arr[],int low,int high)
{
	//如果只有一个元素或者没有元素
    int len=high+1;
	if(low>=high)
		return;
	//一次排序
	int mid=one_sort(arr,low,high);
	//递归左边子序列
	quick_sort(arr,low,mid-1);
	//递归右边子序列
	quick_sort(arr,mid+1,high);
	
}


int main(int argc, char const *argv[])
{
    int arr[]={23,24,12,5,33,5,34,7};
    int len=sizeof(arr)/sizeof(arr[0]);
    printf("After bubble_sort\n");
    bubble_sort(arr,len);
    printf("After select_sort\n");
    select_sort(arr,len);
    printf("After straight_insert_sort\n");
    straight_insert_sort(arr,len);
    printf("After quick_sort\n");
    quick_sort(arr,0,len-1);
    output(arr,len);
    return 0;
}

效果图:

2>

要求:

源代码:

#include <stdio.h>
#include <stdlib.h>
int DigitSum(int n)
{
    if(n==0) return 0;

    return n%10+DigitSum(n/10);

}
int main(int argc, char const *argv[])
{
    int a=1729;
    int sum=DigitSum(a);
printf("n=%d\n",a);
    printf("sum=%d\n",sum);
    
    return 0;
}
c

效果图:

3>

要求:

源代码:

#include <stdio.h>
#include <stdlib.h>
#define swap(num) (num = ((num&0x55555555)<<1)+((num&0xaaaaaaaa)>>1))
int main(int argc, char const *argv[])
{
    int a=10;
    printf("a=%d\n",swap(a));
    printf("a=%d\n",swap(a));
    return 0;
}

效果图:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/375281.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python的进程,线程、协程

python进程的实现 #coding:utf-8 from multiprocessing import Process import timedef run(name):print(%s is running % name)time.sleep(3)print(%s finished his run % name)if __name__ __main__:p Process(targetrun, args(XWenXiang,)) # 创建一个进程对象p.start()…

88 docker 环境下面 前端A连到后端B + 前端B连到后端A

前言 呵呵 最近出现了这样的一个问题, 我们有多个前端服务, 分别连接了对应的后端服务, 前端A -> 后端A, 前端B -> 后端B 但是 最近的时候 却会出现一种情况就是, 有些时候 前端A 连接到了 后端B, 前端B 连接到了 后端A 我们 前端服务使用 nginx 提供前端 html, js…

字符集JAVA

举例&#xff1a; 我们之前在读取文件的时候&#xff0c;文件中都是用英文举例&#xff0c;如果文件内有中文&#xff0c;读取会发生什么 举例&#xff1a;进行读取&#xff0c; //创建字节输入流对象 FileInputStream fisnew FileInputStream("..\\ioDemo\\a.txt"…

市场复盘总结 20240206

仅用于记录当天的市场情况&#xff0c;用于统计交易策略的适用情况&#xff0c;以便程序回测 短线核心&#xff1a;不参与任何级别的调整&#xff0c;采用龙空龙模式 一支股票 10%的时候可以操作&#xff0c; 90%的时间适合空仓等待 今日梯队&#xff1a; 二进三&#xff1a…

11_树莓派_树莓派外设板_PWM_彩虹灯

目录 1.树莓派外设集成板总体介绍 2.第二部分 PWM 树莓派_树莓派外设板_PWM_RGB彩虹灯 3.代码及实现 1.树莓派外设集成板总体介绍 1&#xff09;前言&#xff1a;这是一块为了验证树莓派【兼容树莓派多个型号】的40pins的外设接口的外接板&#xff0c;告别复杂的面包板外设…

macOS的设置与常用软件(含IntelliJ IDEA 2023.3.2 Ultimate安装,SIP的关闭与开启)

目录 1 系统设置1.1 触控板1.2 键盘 2 软件篇2.1 [科学上网](https://justmysocks5.net/members/)2.1 [安装Chrome浏览器](https://www.google.cn/chrome/index.html)2.2 [安装utools](https://www.u.tools)2.3 [安装搜狗输入法](https://shurufa.sogou.com/)2.4 [安装snipaste…

读分布式稳定性建设指南文档

最近还是在做一些和稳定性建设相关的事情&#xff0c;找到一份《分布式稳定性建设指南》文档&#xff0c;摘抄了其中的重点&#xff0c;以便后续回顾方便&#xff0c;一直没上传好资源&#xff0c;我之后再试试&#xff0c;原文内容质量非常高。 大家可以先看一级目录即可&…

《Git 简易速速上手小册》第4章:Git 与团队合作(2024 最新版)

文章目录 4.1 协作流程简介4.1.1 基础知识讲解4.1.2 重点案例&#xff1a;为 Python Web 应用添加新功能4.1.3 拓展案例 1&#xff1a;使用 CI/CD 流程自动化测试4.1.4 拓展案例 2&#xff1a;处理 Pull Request 中的反馈 4.2 使用 Pull Requests4.2.1 基础知识讲解4.2.2 重点案…

《Python 网络爬虫简易速速上手小册》第10章:未来展望与新兴技术(2024 最新版)

文章目录 10.1 机器学习在爬虫中的应用10.1.1 重点基础知识讲解10.1.2 重点案例&#xff1a;使用机器学习进行自动化内容抽取10.1.3 拓展案例 1&#xff1a;利用深度学习识别复杂的网页结构10.1.4 拓展案例 2&#xff1a;机器学习辅助的动态反反爬虫策略 10.2 处理 JavaScript …

《C程序设计》上机实验报告(八)之结构体和共用体

实验内容&#xff1a; 1.运行程序 #include <stdio.h> struct mn { int x,*y; }; void main() { int a[]{15,20,25,30}; struct mn aa[]{35,&a[0],40,&a[1],45,&a[2],50,&a[3]},*p; paa; printf("%d",p->x); printf("%d",(p)…

Elasticsearch:BM25 及 使用 Elasticsearch 和 LangChain 的自查询检索器

本工作簿演示了 Elasticsearch 的自查询检索器将非结构化查询转换为结构化查询的示例&#xff0c;我们将其用于 BM25 示例。 在这个例子中&#xff1a; 我们将摄取 LangChain 之外的电影样本数据集自定义 ElasticsearchStore 中的检索策略以仅使用 BM25使用自查询检索将问题转…

【成品论文】2024美赛B题完整成品论文23页+3小问matlab代码+数据集汇总

2024 年美国大学生数学建模竞赛&#xff08;2024 美赛&#xff09;B 题&#xff1a; 2024 MCM 问题 B: 搜寻潜水艇 题目翻译&#xff1a; Maritime Cruises Mini-Submarines (MCMS)是一家总部位于希腊的公司&#xff0c;专门制造能够携 带人类到达海洋最深处的潜水艇。潜水艇是…

力扣53. 最大子数组和(滑动窗口,动态规划)

Problem: 53. 最大子数组和 文章目录 题目描述思路及解法复杂度Code 题目描述 思路及解法 思路1:滑动窗口 1.为求出最大连续的子数组和,我们逻辑上假设有一个窗口在原数组上滑动, 欲求出最大连续,则需要保证窗口中的所有元素和最起码大于0; 2.即当当前窗口中的元素值的和小于0…

当AGI遇到人形机器人

为什么人类对人形机器人抱有执念 人形机器人是一种模仿人类外形和行为的机器人&#xff0c;它的研究和开发有着多方面的目的和意义。 人形机器人可以更好地适应人类的环境和工具。人类的生活和工作空间都是根据人的尺寸和动作来设计的&#xff0c;例如门、楼梯、桌椅、开关等…

改变终端安全的革命性新兴技术:自动移动目标防御技术AMTD

自动移动目标防御技术通过启用终端配置的自适应防御来改变终端检测和响应能力。产品领导者可以实施AMTD来确保实时威胁响应&#xff0c;并减少检测和响应安全威胁所需的时间。 主要发现 通过动态修改系统配置、软件堆栈或网络特征&#xff0c;自动移动目标防御&#xff08;AMTD…

Retinexformer论文精读笔记

Retinexformer论文精读笔记 论文为2023年ICCV的Retinexformer: One-stage Retinex-based Transformer for Low-light Image Enhancement。论文链接&#xff1a;browse.arxiv.org/pdf/2303.06705.pdf&#xff0c;代码链接&#xff1a;caiyuanhao1998/Retinexformer: “Retinexfo…

初次认识和学习SEO

初探 SEO 初探 SEO SEO 的基本概念 搜索引擎优化&#xff08;英语&#xff1a;search engine optimization&#xff0c;缩写为 SEO&#xff09;&#xff0c;是一种透过了解搜索引擎的运作规则来调整网站&#xff0c;以及提高目的网站在有关搜索引擎内排名的方式 一般的可以理…

k8s 网络策略揭秘:CKA认证必备的网络知识全解析

网络策略&#xff08;NetworkPolicy&#xff09;是Kubernetes中的一种资源对象&#xff0c;用于定义和控制Pod之间的网络通信规则。它允许您在Kubernetes集群中定义详细的网络规则&#xff0c;以控制哪些Pod可以相互通信&#xff0c;以及允许或禁止的流量。网络策略提供了一种实…

【MATLAB源码-第137期】基于matlab的NOMA系统和OFDMA系统对比仿真。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 NOMA&#xff08;非正交多址&#xff09;和OFDMA&#xff08;正交频分多址&#xff09;是两种流行的无线通信技术&#xff0c;广泛应用于现代移动通信系统中&#xff0c;如4G、5G和未来的6G网络。它们的设计目标是提高频谱效…

泛型、Trait 和生命周期(上)

目录 1、提取函数来减少重复 2、在函数定义中使用泛型 3、结构体定义中的泛型 4、枚举定义中的泛型 5、方法定义中的泛型 6、泛型代码的性能 每一门编程语言都有高效处理重复概念的工具。在 Rust 中其工具之一就是 泛型&#xff08;generics&#xff09;。泛型是具体类型…