<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DZone Snippets: mergesort code</title>
    <link>http://snippets.dzone.com/posts</link>
    <pubDate>Mon, 21 Jul 2008 09:12:46 GMT</pubDate>
    <description>DZone Snippets: mergesort code</description>
    <item>
      <title>MergeSort</title>
      <link>http://snippets.dzone.com/posts/show/4463</link>
      <description>// by kyle 2007.8.24 using java&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;package com.chapter2;&lt;br /&gt;&lt;br /&gt;public class MergeSortV2 {&lt;br /&gt;&lt;br /&gt;	/**&lt;br /&gt;	 * @param args&lt;br /&gt;	 */&lt;br /&gt;	static void Merge(int A[],int p, int q, int r)&lt;br /&gt;	{&lt;br /&gt;		int n1 = q-p+1;&lt;br /&gt;		int n2 = r-q;&lt;br /&gt;		int L[] = new int[n1+2];&lt;br /&gt;		int R[] = new int[n2+2];&lt;br /&gt;		for(int i = 1; i &lt;= n1; i++)&lt;br /&gt;		{&lt;br /&gt;			L[i] = A[p+i-1];&lt;br /&gt;		}&lt;br /&gt;		for(int j = 1; j &lt;= n2; j++)&lt;br /&gt;		{&lt;br /&gt;			R[j] = A[q+j];&lt;br /&gt;		}&lt;br /&gt;		L[n1+1] = Integer.MAX_VALUE;&lt;br /&gt;		R[n2+1] = Integer.MAX_VALUE;&lt;br /&gt;		int i = 1;&lt;br /&gt;		int j = 1;&lt;br /&gt;		for(int k = p; k &lt;= r; k++)&lt;br /&gt;		{&lt;br /&gt;			if(L[i] &lt; R[j])&lt;br /&gt;			{&lt;br /&gt;				A[k] = L[i];&lt;br /&gt;				i++;&lt;br /&gt;			}&lt;br /&gt;			else&lt;br /&gt;			{&lt;br /&gt;				A[k] = R[j];&lt;br /&gt;				j++;&lt;br /&gt;			}&lt;br /&gt;		}&lt;br /&gt;	}&lt;br /&gt;	static void MergeSort(int A[],int p, int r)&lt;br /&gt;	{&lt;br /&gt;		if(p&lt;r)&lt;br /&gt;		{&lt;br /&gt;			int q = (p+r)/2;&lt;br /&gt;			MergeSort(A, p, q);&lt;br /&gt;			MergeSort(A, q+1, r);&lt;br /&gt;			Merge(A, p, q, r);&lt;br /&gt;			&lt;br /&gt;		}&lt;br /&gt;	}&lt;br /&gt;	public static void main(String[] args) {&lt;br /&gt;		// TODO Auto-generated method stub&lt;br /&gt;&lt;br /&gt;		int arr[] = {6,23,33,1,5,77};&lt;br /&gt;		MergeSort(arr,1,5);&lt;br /&gt;		for(int i = 0; i &lt; 6; i++)&lt;br /&gt;		{&lt;br /&gt;			System.out.println(arr[i]);&lt;br /&gt;		}&lt;br /&gt;	}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;</description>
      <pubDate>Fri, 24 Aug 2007 13:45:58 GMT</pubDate>
      <guid>http://snippets.dzone.com/posts/show/4463</guid>
      <author>catsky (kyle zheng)</author>
    </item>
  </channel>
</rss>
