Monday 23 December 2013

Top 10 SEO Blogs and Webmaster Forum

seo blogs and forum
There are dozens of SEO Blogs that offer tips and advises to up-and-coming and professional SEOs, but are you really sure they offer the best advices. We’ve listed 10 of the best SEO Blogs with the reputation, traffic and reliability that made them the bibles of the SEO world.

SEOBook

With over 1,400,000 unique visitors and an Alexa rank of 1,036, SEOBook is no wonder the leadingSEO Blogs today with thousands of pages to help you look for the right tools, resources, tutorials and reliable contents when it comes to SEO, affiliate marketing and other internet-related ventures.

Moz

Moz boasts of more than 700,000 unique visits a month and an Alexa Rank of 1,946. It is the original SEO Blogs offering various resources to make it through the cut-throat online competition.

SearchEngineLand

Search Engine Land attracts around 650,000 unique monthly visitors and has an Alexa rank of 2,485. It is home to the hottest and most valuable information in the field of SEO with seasoned writers and experts in the industry regularly give updates on marketing strategies and search engine optimization.

SearchEngineWatch

With an estimated unique monthly visitors of over 645,000, Search Engine Watch is ranked 3,022nd by Alexa. Search Engine Watch shares authoritative and helpful free tutorials and information on SEO and Google updates.
  

SearchEngineJournal

SEJ has a unique monthly visitor of almost 550,000 and an Alexa Rank of 3,275. Here you can find interesting articles about SEO plus free daily tips on how to optimize your websites for free. All the big names in the SEO world also contribute here.

SEOChat

With more than 500,000 unique monthly visitors  a month, SEO Chat enjoys an Alexa rank of 2,235. It’s popular among SEOs because of the wide array of information on optimizing and monetizing websites in easy-to-understand steps and processes.

MattCutts

Arguably the biggest name in the industry, Matt Cutts regularly updates his websites with tips and thoughts on the latest trends on SEO.  Estimated Unique Monthly Visitors: 440,000. Alexa Rank: 4,524.

BlackHatTeam

Black Hat Team is an online forum where black hat enthusiasts discuss and share techniques. While Google hates black hat and legit SEOs consider it a taboo, Black Hat Team still pulls an average of 400,000 unique visitors  a month and enjoys an Alexa rank of 1,003.

SERoundTable

SE Round Table welcomes around 400,000 a month as enjoys 5,815 in the Alexa Rank. If you want to learn more about SEO and keep your eyes on latest Google Panda and Penguin updates, then, SERound Table is where you should be.

SubmitExpress

SubmitExpress has over 390,000 visitors every month and an Alexa rank of 2,834. It’s not just an ordinary SEO Blogs, it’s also an SEO company that has helped nearly 6,000 companies succeed in the field of SEM and SEO. The website also hosts helpful tools for article submissions, attracting millions of visitors a year.

Top 10 Creative SEO Ideas

seo ideas
There are many ways for internet-based businesses to go about getting traffic to their websites these days, but one way in particular has stood the test of time and proven itself to be an excellent long term companion to any business owner. SEO is considered one of the most important ways of getting traffic. By nature it tends to be highly relevant traffic that is much more likely to engage with your website, and for the most part it is free traffic.
You really can’t beat it, but it does take some work and some understanding to properly implementSEO into your websites and start bringing in natural traffic. By doing things right the first time around, you will save yourself a lot of potential headaches down the road.
The search engines are very strict about their ranking systems, and they have very specific guidelines that they urge website owners to follow if they wish to have SEO work in their favor. This article is going to share with you the top 10 SEO Ideas that you need to start raking in that highly targeted natural traffic.

1. Engage in social media.

Believe it or not, social media does much more than provide you with a direct bridge to your audience and help you to build your brand. Social media allows you to network properly, which is a very significant factor involved in the process of carving out your position in a market, gaining viewer-ship, and ultimately attracting the attention of the search engines.

2. Take advantage of local SEO.

You can utilize certain business directories such as Google and Yahoo local, creating a profile for your business that people will see when searching for specific local related keywords. Most people these days search for local things, so you should take advantage of that.

3. Your onsite SEO needs to be pretty solid.

Make sure that you meet all of the typical onsite SEO guidelines. Have relevant keywords in your meta tags and titles, and ensure that there is enough keyword density on your pages to give the search engines a solid idea of what your content is about.
  

4. The wonders of Blogging.

Like social media, blogging offers you a personal medium through which you can connect to customers and clients and further improve your brand. To make things even better though, search engines tend to really like blogs, and so if you have a relevant blog that you can link up with your website, you will certainly get a lot of SEO credit for it.

5. Make sure to update on a regular basis.

Google wants to see websites that are constantly updating their content and keeping things at a premium level for their viewers.

6. Add some videos and alternative media to your site.

Videos can add a lot of interactivity to a website, and really serve to grab the visitor’s attention. It can also help to separate you from your competitors. Ultimately, people will stay longer. Search engines like this.

7. Do some press releases.

Press releases can help you get your name and message out there, and they serve to bring more targeted attention to your central website.

8. Setup a PPC campaign.

Google in particular likes when PPC is used in a relevant manner to promote a website. SEO and PPC tend to go hand in hand, and aside from the extra traffic that paid advertising will bring you, you’ll also build up your brand some more.

9. Use alternative forms of advertising, like Craigslist.

A great cheap way to get a little extra attention is by using sites like Craigslist. If you optimize your ads properly, they can get good attention from the search engines. Be sure to promote your website when writing your articles.

10. Consider finding a company that specializes in SEO for consulting purposes.

While it is totally plausible to do all of your SEO work on your own, it certainly doesn’t hurt to get a professional opinion from an expert in the subject. You could even distribute the work load a little bit if you decided to go that route, making the optimization process that much more efficient and quicker.

Sunday 1 December 2013

Java Program to Implement Dijkstra’s Algorithm using Set

This Java program,to Implement Dijkstra’s algorithm using Set.Dijkstra’s algorithm is a graph search algorithm that solves the single-source shortest path problem for a graph with non-negative edge path costs, producing a shortest path tree.
Here is the source code of the Java program to implement Dijkstra’s algorithm using Set. The Java program is successfully compiled and run on a Linux system. The program output is also shown below.
import java.util.* use for all util file .we used this library as replace to below  given library.
  1. import java.util.HashSet;
  2. import java.util.InputMismatchException;
  3. import java.util.Iterator;
  4. import java.util.Scanner;
  5. import java.util.Set;
  6.  
  7. public class DijkstraAlgorithmSet
  8. {
  9.     private int distances[];
  10.     private Set<Integer> settled;
  11.     private Set<Integer> unsettled;
  12.     private int number_of_nodes;
  13.     private int adjacencyMatrix[][];
  14.  
  15.     public DijkstraAlgorithmSet(int number_of_nodes)
  16.     {
  17.         this.number_of_nodes = number_of_nodes;
  18.         distances = new int[number_of_nodes + 1];
  19.         settled = new HashSet<Integer>();
  20.         unsettled = new HashSet<Integer>();
  21.         adjacencyMatrix = new int[number_of_nodes + 1][number_of_nodes + 1];
  22.     }
  23.  
  24.     public void dijkstra_algorithm(int adjacency_matrix[][], int source)
  25.     {
  26.         int evaluationNode;
  27.         for (int i = 1; i <= number_of_nodes; i++)
  28.             for (int j = 1; j <= number_of_nodes; j++)
  29.                 adjacencyMatrix[i][j] = adjacency_matrix[i][j];
  30.  
  31.         for (int i = 1; i <= number_of_nodes; i++)
  32.         {
  33.             distances[i] = Integer.MAX_VALUE;
  34.         }
  35.  
  36.         unsettled.add(source);
  37.         distances[source] = 0;		
  38.         while (!unsettled.isEmpty())
  39.         {
  40.             evaluationNode = getNodeWithMinimumDistanceFromUnsettled();
  41.             unsettled.remove(evaluationNode);
  42.             settled.add(evaluationNode);
  43.             evaluateNeighbours(evaluationNode);
  44.         } 
  45.     }
  46.  
  47.     private int getNodeWithMinimumDistanceFromUnsettled()
  48.     {
  49.         int min ;
  50.         int node = 0;
  51.  
  52.         Iterator<Integer> iterator = unsettled.iterator();
  53.         node = iterator.next();
  54.         min = distances[node];
  55.         for (int i = 1; i <= distances.length; i++)
  56.         {
  57.             if (unsettled.contains(i))
  58.             {
  59.                 if (distances[i] <= min)
  60.                 {
  61.                     min = distances[i];
  62.                     node = i;			
  63.                 }
  64.             }
  65.         }
  66.         return node;
  67.     }
  68.  
  69.     private void evaluateNeighbours(int evaluationNode)
  70.     {
  71.         int edgeDistance = -1;
  72.         int newDistance = -1;
  73.  
  74.         for (int destinationNode = 1; destinationNode <= number_of_nodes; destinationNode++)
  75.         {
  76.             if (!settled.contains(destinationNode))
  77.             {
  78.                 if (adjacencyMatrix[evaluationNode][destinationNode] != Integer.MAX_VALUE)
  79.                 {
  80.                     edgeDistance = adjacencyMatrix[evaluationNode][destinationNode];
  81.                     newDistance = distances[evaluationNode] + edgeDistance;
  82.                     if (newDistance < distances[destinationNode])
  83.                     {
  84.                         distances[destinationNode] = newDistance;
  85.                     }
  86.                     unsettled.add(destinationNode);
  87.                 }
  88.             }
  89.         }
  90.     }
  91.  
  92.     public static void main(String... arg)
  93.     {
  94.         int adjacency_matrix[][];
  95.         int number_of_vertices;
  96.         int source = 0;
  97.         Scanner scan = new Scanner(System.in);
  98.         try
  99.         {
  100.             System.out.println("Enter the number of vertices");
  101.             number_of_vertices = scan.nextInt();
  102.             adjacency_matrix = new int[number_of_vertices + 1][number_of_vertices + 1];
  103.  
  104.             System.out.println("Enter the Weighted Matrix for the graph");
  105.             for (int i = 1; i <= number_of_vertices; i++)
  106.             {
  107.                 for (int j = 1; j <= number_of_vertices; j++)
  108.                 {
  109.                     adjacency_matrix[i][j] = scan.nextInt();
  110.                     if (i == j)
  111.                     {
  112.                         adjacency_matrix[i][j] = 0;
  113.                         continue;
  114.                     }
  115.                     if (adjacency_matrix[i][j] == 0)
  116.                     {
  117.                         adjacency_matrix[i][j] =  Integer.MAX_VALUE;
  118.                     }
  119.                 } 
  120.             } 
  121.  
  122.             System.out.println("Enter the source ");
  123.             source = scan.nextInt();
  124.  
  125.             DijkstraAlgorithmSet dijkstrasAlgorithm = new DijkstraAlgorithmSet(number_of_vertices);
  126.             dijkstrasAlgorithm.dijkstra_algorithm(adjacency_matrix, source);
  127.  
  128.             System.out.println("The Shorted Path to all nodes are ");
  129.             for (int i = 1; i <= dijkstrasAlgorithm.distances.length - 1; i++)
  130.             {
  131.                 System.out.println(source + " to " + i + " is "+ dijkstrasAlgorithm.distances[i]);
  132.             }
  133.         } catch (InputMismatchException inputMismatch)
  134.         {
  135.             System.out.println("Wrong Input Format");
  136.         }
  137.         scan.close();
  138.     }
  139. }
Enter the number of vertices
5
Enter the Weighted Matrix for the graph
0 9 6 5 3 
0 0 0 0 0
0 2 0 4 0
0 0 0 0 0
0 0 0 0 0
Enter the source 
1
The Shorted Path to all nodes are 
1 to 1 is 0
1 to 2 is 8
1 to 3 is 6
1 to 4 is 5
1 to 5 is 3