007 Golang-channel-practice 打印水分子

对应leetcode 1117

https://leetcode.cn/problems/building-h2o/description/

题目大意:在三个为一组的字符串中,打印两个H,一个O,顺序不限。

这在go里面很容易实现。只需要在每个函数前加上一个go关键词,就可以轻松实现并发了。直接看代码!

Go 复制代码
package main

import (
	"fmt"
	"sync"
)

func main() {
	for {
		var wg sync.WaitGroup
		wg.Add(3)
		go H1(&wg)
		go H2(&wg)
		go O1(&wg)
		wg.Wait()
		fmt.Println()
	}
}

func H1(wg *sync.WaitGroup) {
	defer wg.Done()
	fmt.Print("H")
}

func H2(wg *sync.WaitGroup) {
	defer wg.Done()
	fmt.Print("H")
}

func O1(wg *sync.WaitGroup) {
	defer wg.Done()
	fmt.Print("O")
}

打印效果:

相关推荐
好风凭借力,送我上青云2 分钟前
哈夫曼树和哈夫曼编码
c语言·开发语言·数据结构·c++·算法·霍夫曼树
KiefaC5 分钟前
【C++】红黑树的调整
开发语言·c++·算法
第二只羽毛6 分钟前
C++高性能内存池
开发语言·c++·缓存·性能优化
ULTRA??7 分钟前
动态内存管理:C语言malloc极简封装方案(修正版,可申请二维数组)
c语言·开发语言
梁正雄9 分钟前
9、Python面向对象编程-1
服务器·开发语言·python
say_fall10 分钟前
C++ 入门第一课:命名空间、IO 流、缺省参数与函数重载全解析
c语言·开发语言·c++
霸王大陆16 分钟前
《零基础学 PHP:从入门到实战》模块十一:成为 PHP 侦探,精通错误处理与调试实战大全-1
开发语言·笔记·php·课程设计
郝学胜-神的一滴18 分钟前
Python的内置类型:深入理解与使用指南
开发语言·python·程序人生
松☆21 分钟前
C语言--结构体
c语言·开发语言
关于不上作者榜就原神启动那件事25 分钟前
【java后端开发问题合集】
java·开发语言