⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sortalgorithm.xml.bak

📁 用JAVA实现排序等简单算法的演示
💻 BAK
字号:
<?xml version = "1.0" encoding = "gb2312" ?>
<!DOCTYPE algorithmgroup SYSTEM "algorithmdef.dtd">
<algorithmgroup xmlns="http://www.cs.sysu.edu.cn/~zxc/SortAlgorithmAnimation" name = "SortAlogirthm">
	<algorithm name = "GeneralSorting">
		<!-- 算法的实现情况 -->
		<implementation>
			<!-- 实现算法的类 -->
			<class>algorithmImp/SortAlgorithmImp</class>
			<!-- 实现算法的方法,该方法必须是上述类的方法 -->
			<method>sorting</method>
		</implementation>
		<!-- 与整个算法相关的感兴趣事件 -->
		<events>
			<event name = "callSorting">
				<time>after</time>
				<refer>call</refer>
			</event>
		</events>
		<datastructures>
			<data name = "SortingData" type = "int[]">
				<!-- 实现算法的属性,可使用全称指明属性所在的类,缺省为上述类的属性 -->
				<implementation>data</implementation>
				<!-- 相关的感兴趣事件 -->
				<events>
					<event name = "setSortingData">
						<time>after</time>
						<refer>set</refer>
					</event>
				</events>
			</data>
		</datastructures>
		<actions>
			<action name = "Swap">
				<!-- 实现算法的方法,可使用全称指明属性所在的类,缺省为上述类的方法 -->
				<implementation>swap</implementation>
				<arguments>
					<argument name = "firstIndex" type = "int"/>
					<argument name = "secondIndex" type = "int"/>
				</arguments>
				<events>
					<event name = "callSwap">
						<time>after</time>
						<refer>call</refer>
					</event>
				</events>
			</action>
			<action name = "Compare">
				<implementation>compare</implementation>
				<arguments>
					<argument name = "firstIndex" type = "int"/>
					<argument name = "secondIndex" type = "int"/>
				</arguments>
				<events>
					<event name = "callCompare">
						<time>after</time>
						<refer>call</refer>
					</event>
				</events>
			</action>
			<action name = "Initialize">
				<implementation>initialize</implementation>
				<arguments>
					<argument name = "aData" type = "int[]"/>
				</arguments>
				<events>
					<event name = "callInitialize">
						<time>after</time>
						<refer>call</refer>
					</event>
				</events>
			</action>
			<action name = "CompareSelected">
				<implementation>compareSelectedWith</implementation>
				<arguments>
					<argument name = "index" type = "int"/>
				</arguments>
				<events>
					<event name = "callCompareSelected">
						<time>after</time>
						<refer>call</refer>
					</event>
				</events>
			</action>
			<action name = "SwapSelected">
				<implementation>swapSelectedWith</implementation>
				<arguments>
					<argument name = "index" type = "int"/>
				</arguments>
				<events>
					<event name = "callSwapSelected">
						<time>after</time>
						<refer>call</refer>
					</event>
				</events>
			</action>
			<action name = "Select">
				<implementation>select</implementation>
				<arguments>
					<argument name = "index" type = "int"/>
				</arguments>
				<events>
					<event name = "callSelect">
						<time>after</time>
						<refer>call</refer>
					</event>
				</events>
			</action>
			<action name = "PlaceSelected">
				<implementation>placeSelectedData</implementation>
				<arguments>
					<argument name = "targetIndex" type = "int"/>
				</arguments>
				<events>
					<event name = "callPlaceSelected">
						<time>after</time>
						<refer>call</refer>
					</event>
				</events>
			</action>
			<action name = "MoveElement">
				<implementation>moveElement</implementation>
				<arguments>
					<argument name = "fromIndex" type = "int"/>
					<argument name = "toIndex" type = "int"/>
				</arguments>
				<events>
					<event name = "callMoveElement">
						<time>after</time>
						<refer>call</refer>
					</event>
				</events>
			</action>
		</actions>
	</algorithm>
	<algorithm name = "bubbleSorting">
		<!-- 该算法上下文的描述扩充哪个算法的描述,这样可简化一些算法上下文的描述-->
		<extends>GeneralSorting</extends>
		<!-- 算法的实现情况 -->
		<implementation>
			<!-- 实现算法的类,这个类必须是 GeneralSorting 中指定的类的子类 -->
			<class>algorithmImp/BubbleSortImp</class>
			<!-- 实现算法的方法,该方法必须是上述类的方法,如果不给出,则缺省为
			  GeneralSorting 中指定的类的方法 -->
		</implementation>
		<!-- 如果该算法的数据结构和原子动作的描述与 GeneralSorting 没有差别, 
		  则无需给出 -->
	</algorithm>
	<algorithm name = "SelectSorting">
		<extends>GeneralSorting</extends>
		<implementation>
			<class>algorithmImp/SelectSortImp</class>
		</implementation>
	</algorithm>
	<algorithm name = "InsertSorting">
		<extends>GeneralSorting</extends>
		<implementation>
			<class>algorithmImp/InsertSortImp</class>
		</implementation>
	</algorithm>
	<algorithm name = "ShellSorting">
		<extends>GeneralSorting</extends>
		<implementation>
			<class>algorithmImp/ShellSortImp</class>
		</implementation>
	</algorithm>
	<algorithm name = "QuickSorting">
		<extends>GeneralSorting</extends>
		<implementation>
			<class>algorithmImp/QuickSortImp</class>
		</implementation>
		<actions>
			<action name = "QuickSort">
				<implementation>quickSort</implementation>
				<arguments>
					<argument name = "startIndex" type = "int"/>
					<argument name = "endIndex" type = "int"/>
				</arguments>
				<events>
					<event name = "callQuickSort">
						<time>before</time>
						<refer>call</refer>
					</event>
				</events>
			</action>
			<action name = "Partition">
				<implementation>partition</implementation>
				<arguments>
					<argument name = "startIndex" type = "int"/>
					<argument name = "endIndex" type = "int"/>
				</arguments>
				<events>
					<event name = "callPartition">
						<time>before</time>
						<refer>call</refer>
					</event>
				</events>
			</action>
		</actions>
	</algorithm>
	<algorithm name = "MergeSorting">
		<extends>GeneralSorting</extends>
		<implementation>
			<class>algorithmImp/MergeSortImp</class>
		</implementation>
		<datastructures>
			<data name = "MergingData" type = "int[]">
				<!-- 实现算法的属性,可使用全称指明属性所在的类,缺省为上述类的属性 -->
				<implementation>mergingData</implementation>
				<events>
					<event name = "setMergingData">
						<time>after</time>
						<refer>set</refer>
					</event>
				</events>
			</data>
		</datastructures>
		<actions>
			<action name = "Merge">
				<implementation>merge</implementation>
				<arguments>
					<argument name = "startIndex" type = "int"/>
					<argument name = "midIndex" type = "int"/>
					<argument name = "endIndex" type = "int"/>
				</arguments>
				<events>
					<event name = "callMerge">
						<time>after</time>
						<refer>call</refer>
					</event>
				</events>
			</action>
			<action name = "CopyMergedData">
				<implementation>copyMergedData</implementation>
				<arguments>
					<argument name = "startIndex" type = "int"/>
					<argument name = "endIndex" type = "int"/>
				</arguments>
				<events>
					<event name = "callCopyMergedData">
						<time>after</time>
						<refer>call</refer>
					</event>
				</events>
			</action>
			<action name = "CopyData">
				<implementation>copyData</implementation>
				<arguments>
					<argument name = "mergingIndex" type = "int"/>
					<argument name = "dataIndex" type = "int"/>
				</arguments>
				<events>
					<event name = "callCopyData">
						<time>after</time>
						<refer>call</refer>
					</event>
				</events>
			</action>
		</actions>
	</algorithm>
	<algorithm name = "HeapSorting">
		<extends>GeneralSorting</extends>
		<implementation>
			<class>algorithmImp/HeapSortImp</class>
		</implementation>
		<actions>
			<action name = "Adjust">
				<implementation>adjust</implementation>
				<arguments>
					<argument name = "rootIndex" type = "int"/>
					<argument name = "length" type = "int"/>
				</arguments> <!-- 没有相关的感兴趣事件 -->
			</action> 
		</actions> 
	</algorithm>
</algorithmgroup>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -