【Go实战基础】数组实战,程序员的基本功

本文介绍了如何编程实现一个函数,对输入的整数数组进行奇偶排序,使得所有奇数位于前半部分,偶数位于后半部分。通过声明两个额外数组分别存储奇数和偶数,遍历原数组并根据数值是否为偶数进行分配,最后将偶数数组追加到奇数数组后面,形成新的有序数组。文章提供了完整的Go语言代码示例,并展示了运行结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数组实战,程序员的基本功。

实战需求:

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。

实战思路:

1、先声明两个数组,分别用于存储奇数和偶数,

2、然后遍历待排序的数组,根据是否可以被 2 整除,将数据分发到偶数和奇数数组,

3、最后将偶数数组追加到奇数数组之后作为新的数组返回。

马上安排!

一、工程目录

cd go-002/

二、创建 g002.go

/*
 * @Author: 菜鸟实战
 * @FilePath: /go110/go-002/g002.go
 * @Description: 数组实战,程序员的基本功
 */

package main

import (
	"fmt"
	"runtime"
)

// 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,
// 使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。
func formatArrayV1(arr []int) []int {
	// 声明两个数组
	var oddArr, evenArr []int

	// 区分奇数和偶数
	for _, value := range arr {
		if value%2 == 0 {
			evenArr = append(evenArr, value)
		} else {
			oddArr = append(oddArr, value)
		}
	}

	// 拼接
	return append(oddArr, evenArr...)
}

// 主函数
func main() {
	// 使用内置函数打印
	println("Hello", "菜鸟实战")

	// 待排序数组
	arr := []int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}

	fmt.Println("排序前:", arr)
	fmt.Println("排序后:", formatArrayV1(arr))

	// 使用包函数打印
	fmt.Printf("版本: %s \n", runtime.Version())
}

三、编译和运行

1、编译运行


# 1、生成模块依赖
go mod init g002

# 2、编译
go build g002.go 

# 3、编译后的目录结构

└── go-002
    ├── g002
    ├── g002.go
    └── go.mod

# 4、运行
go run g002

2、运行结果

Hello 菜鸟实战
排序前: [0 1 2 3 4 5 6 7 8 9]
排序后: [1 3 5 7 9 0 2 4 6 8]
版本: go1.17.10 

菜鸟实战,持续学习!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜鸟实战

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值