考试辅导

名师推荐

试听名师的课 查看所有名师

2011年软件设计师辅导:并行排序算法(6) 发布时间:2011-03-15 22:23 来源:互联网

2011年软件设计师辅导:并行排序算法(6)

  private static void Main( string [] args)

  {

  Vector[] vectors = GetVectors();

  Console.WriteLine( string .Format( " n = {0} " , vectors.Length));

  Stopwatch watch1 = new Stopwatch();

  watch1.Start();

  A(vectors);

  watch1.Stop();

  Console.WriteLine( " A sort time: " + watch1.Elapsed);

  Print(vectors);

  vectors = GetVectors();

  watch1.Reset();

  watch1.Start();

  B(vectors);

  watch1.Stop();

  Console.WriteLine( " B sort time: " + watch1.Elapsed);

  Print(vectors);

  vectors = GetVectors();

  watch1.Reset();

  watch1.Start();

  C(vectors);

  watch1.Stop();

  Console.WriteLine( " C sort time: " + watch1.Elapsed);

  Print(vectors);

  vectors = GetVectors();

  watch1.Reset();

  watch1.Start();

  D(vectors);

  watch1.Stop();

  Console.WriteLine( " D sort time: " + watch1.Elapsed);

  Print(vectors);

  Console.ReadKey();

  }

  private static Vector[] GetVectors()

  {

  int n = 1 << 21 ;

  Vector[] vectors = new Vector[n];

  Random random = new Random();

  for ( int i = 0 ; i < n; i ++ )

  {

  vectors[i] = new Vector();

  vectors[i].X = random.NextDouble();

  vectors[i].Y = random.NextDouble();

  vectors[i].Z = random.NextDouble();

  vectors[i].W = random.NextDouble();

  }

  return vectors;

  }

  private static void A(Vector[] vectors)

  {

  Array.Sort(vectors, new VectorComparer());

  }

  private static void B(Vector[] vectors)

  {

  int n = vectors.Length;

  for ( int i = 0 ; i < n; i ++ )

  {

  Vector c1 = vectors[i];

  c1.T = Math.Sqrt(Math.Pow(c1.X, 2 )

  + Math.Pow(c1.Y, 2 )

  + Math.Pow(c1.Z, 2 )

  + Math.Pow(c1.W, 2 ));

  }

 

第一考试网友情提示:如果您遇到任何疑问,请登录第一考试网考试辅导频道或添加qq:,第一考试网以“为考友服务”为宗旨,秉承“快乐学习,轻松考试!”的理念,旨在为广大考友打造一个良好、温馨的学习与交流平台,欢迎持续关注。以上是小编为大家推荐的《2011年软件设计师辅导:并行排序算法(6)》相关信息。

编辑推荐

VRRP协议的相关信息

2011年软考数据库系统工程师知识点讲解(5)

用vsftpd代码建立虚拟主机

H.248协议的作用及功能介绍

2011年软件设计师知识点:什么是设计模式