Alibabacloud.com offers a wide variety of articles about data structures and algorithms pdf in java, easily find your data structures and algorithms pdf in java information here online.
Data structures and algorithms (C # implementation) series --- tree (1)
Heavenkiller (original)
First, let's define the tree:
A tree is a finite, non-empty node set,
T = {r} or T1 or T2 or... Or Tn
It has the following properties:
1. the node r specified in the set is called the root node of the tree.
2. The remaining nodes can be divided into n subsets, T1, T2 ,
elements u, and another set R with R relationships. if (b) belongs to r, then elements a and B are equivalent. Equivalence classes refer to the largest set of mutually equivalent elements. In other words, the set U is divided according to the relationship, the elements within the class are equivalent and can be regarded as a kind of clustering.Offline equivalence classes: Known N and R, determine all equivalence classes.Online equivalence class: There are n elements at the beginning, and each e
from its previous element, execute a[count]=a[i],count++;Question 16: How to find the second largest number in an array.Method 1: Sort all the elements and the second largest number in the second positionMethod 2: Use two variables to record the first and second largest number, for the maximum initial value of the primary element, the second largest number is initialized to the smallest negative numbers. Each time the current element is compared with the maximum value, if it is greater than the
than D), but the cardinality sort is only suitable for a key code with distinct structural characteristics such as strings and integers. When n is large and d is small, it can be sorted by cardinality. (5The sorting algorithm discussed earlier, in addition to the Cardinal sort, the other sorting algorithm is the sequential storage structure. In order to avoid a significant amount of time to record movement, a chain storage structure can be used in order to sort the records. Direct Insert sor
data in the stack:int top;initially, when the stack is empty, set: top =–1to avoid stack overflow, you need to check if the stack is full before adding elements to the stack. Let's modify this algorithm to check for this condition. Problem Description:write a program to implement a stack by using an array that requires the stack to hold5an element. So-kinsoku-overflow:1 ' >Using system;using system.collections.generic;using system.componentmodel;usin
all cases:650) this.width=650; "src=" Http://files.jb51.net/file_images/article/201211/2012110120523847.png "/>void Clear (); empty queue; Initial conditions: queue exists; operation result: Leave the queue empty.void in (T item); Queued Initial conditions: queue exists; action Result: Adds a new data element with a value of item to the end of the queue, and the queues are changed.650) this.width=650; "Width=" 620 "height=" 437 "src=" http://files.jb
Binary tree node:/** Binary tree node*/public class Node {Data itempublic Long data;Left Dial Hand nodePublic Node Leftchild;Right child nodePublic Node Rightchild;/*** Construction Method* @param data*/Public Node (Long data) {This.data = data;}}Binary Tree class:/** Two-fo
(recorded as n) should be equal to the sum of 0 degree nodes, 1 degree nodes (recorded as N1) and 2 degree nodes:N=NO+N1+N2 (Formula 1)On the other hand, 1-degree nodes have a child, 2-degree nodes have two children, so the total number of child nodes in the binary tree is:Nl+2n2Only the root node in the tree is not a child of any node, so the total number of nodes in the binary tree can be expressed as:N=n1+2n2+1 (Formula 2)obtained by the Formula 1 and the 2:No=n2+1"
filtering is the Bloom filter (Bron filter). The Bron filter principle is simply: Create a large bit array, then hash the same URL with multiple hash functions to get multiple numbers, and then position the digits in the bit array at 1. Next time a URL, the same is used to hash the hash function, to get multiple numbers, we only need to determine the bit array of these numbers corresponding to is all 1, if all is 1, then the URL has appeared. This completes the URL-heavy issue. Of course, this
var arraynumber: [Int] = [2,4, 6, 7, 3, 8, 1]Bubble sortfunc Maopao (var array: [int]), [int] { for var i = 0; i count; i++ { for var j = I;j count; j + + {if array[j] > array[j +1] {var temp = Array[j]ARRAY[J] = array[j+1]array[j+1] = Temp}}}return Array} Let array2 =maopao([2,4, 6, 7, 3, 8, 9 , 5])Cond... Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced. Swift sorting algorithms and
Huashan Big BroSort by: Topological sorting algorithmDictionary ordering algorithmProgramming Zhu Ji Nanxiong: Ordering by bitmapTree: Red and Black tree summaryB + Tree and b* Tree SummaryB-Tree Summary SummaryBalanced binary tree (AVL tree) Summarytrie--Dictionary TreeGraph traversal: Depth-first traversal and breadth-first traversalMinimum spanning tree: minimum spanning tree-prim algorithm and Kruskal algorithmShortest path: Shortest path-dijkstra algorithm and Floyd algorithmCommon classica
, vi belongs to V-S. Then, the shortest path is compared with the source point A to the path length of the node vi, the minimum length is the shortest path from source point A to Node VI. Finally, the end of the shortest path (i.e. VI) is added to the S(3) Repeat step (2) until the shortest path of all endpoints is found, that is, the number of nodes in S is equal to the number of nodes in V.The time complexity of the Dijkstra algorithm is O (n^2), the spatial complexity depends on the storage m
Data structures and algorithms (C # implementation) series-demonstration (II)
Heavenkiller (original)
Public static void ShowGeneralTree_travel ()
{
IEnumerator tmpIEnum;
Tree. TraversalType travelType = 0;
// --------------------- Prompt ----------------------------
Console. WriteLine ("please choose a No. of a item you want to travel :");
Console. WriteLine ("
Data structures and algorithms (C # implementation) series --- tree (2)
Heavenkiller (original)
Public class InOrder: IPrePostVisitor
{
Private IVisitor visitor;
Public InOrder (IVisitor _ vis) {visitor = _ vis ;}
# Region IPrePostVisitor Member
Public void PreVisit (object _ obj)
{
// TODO: Add InOrder. PreVisit implementation
}
Public void Visit (object _ ob
Data structures and algorithms (C # implementation) series --- generalized tree (II)
Heavenkiller (original)
Public override object Key {get {return this. key ;}}
Public override uint Degree {get {return this. degree ;}}
// Public override uint Height {get {return this. height ;}}
Public override bool IsEmpty () // property takes the place of IsEmpty ()
{Return
It seems that the following is the most elegant implementation.Other, either node redundancy, or initialize ugly ...#!/usr/bin/env python#-*-coding:utf-8-*-classNode:def __init__(self, initdata): Self.__data=InitData self.__next=NonedefGetData (self):returnSelf.__data defGetNext (self):returnSelf.__next defSetData (Self, newdata): Self.__data=NewDatadefSetnext (Self, newnext): Self.__next=Newnextclasssincyclinkedlist:def __init__(self): Self.head=Node (None) self.head.setNext (self.head)defAdd
next time . A the defShufflepile (self): + """in the current state, the tree is adjusted so that it becomes a heap""" - #downward adjustment from "heap bottom" to "heap top", which keeps the smallest elements rising $ #This allows the heap below the I node to be the local minimum heap. $ forIinchRange ((Len (self)-2)/2,-1,-1):#N/2,..., 0 - Self.siftdown (i) - the defdeletemin (self): - """Remove Minimum element"""Wuyit = self[0]#record the
1 //input A, B, output a+b2 /*#include 3 int main ()4 {5 int A, b;6 scanf ("%d%d", a,b);7 printf ("%d", a+b);8 }*/9 /*Ten //Enter a character to return his ASCLL code One #include A int main () - { - char A; the scanf ("%c", a); - printf ("%d", a); - }*/ - + -#include + intMain () A { at CharA; - Charb; - while(scanf ("%c%c", a,b)!=eof)//when there is a space in the middle, the input parameters should also have a space, when there is no space, you do not have to enter a space.
Hanoi Problem Solving:Hanoi (also known as Hanoi) is a puzzle toy derived from an ancient Indian legend. When big Brahma created the world, he made three diamond pillars, and stacked 64 gold discs on a pillar from bottom to top in order of size. The great Brahma commanded the Brahman to rearrange the discs from below to the other pillars in order of size. It is also stipulated that the disc cannot be enlarged on the small disc, and only one disc can be moved between the three pillars at a time.
Stack: LIFO. Stack top at the end, bottom of the stack in the front. The newly added element and the element to be deleted are saved at the end of the stack.Create a stack:functionStack () {varitems = [];/*Save the elements in the stack with an array*/ This. Push =function(e) {Items.push (e); } This. Pop =function() { returnItems.pop (); } This. Peek =function() { returnItems[length-1]; } This. IsEmpty =function() { returnItems.length = = 0; } This. Size
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.