这是第一个Julia程序,首先定义了一个冒泡排序算法,再随机生成一个数组,调用这个冒泡算法。
function BubbleSort(v::AbstractVector, lo::Int, hi::Int)
while true
clean = true
for i = lo:hi-1
if ( v[i+1]<v[i])
v[i+1], v[i] =v[i], v[i+1]
clean = false
end
end
clean && break
end
return v
end
#println("start")
v=rand(5)*10
println(v)
println(BubbleSort(v,1,5))
一些需要注意的与其他语言差异在:
1. 变量类型声明形式为v::type
2. 一个复制表达式,完成许多操作。如v[i+1],v[i] = v[i], v[i+1]
3. Clear && break完成的是先判断,后执行。
4. 使用#转移为注释符号
总结:总体上看,这个语言的语法比较灵活,甚至于接近失控的灵活。这个例程是我写出的第一个例程,只是为给出一个直观的体验,并没能体现Julia的优势,关于并行、协程等以后会再描述。
参考
1. 官方网站 http://julialang.org/
2. Julia安装目录下的\share\julia\examples的参考程序