so something like this will create a data list that has 14x14 nodes each named "Node#"
var gridsize = 14;
for(size = 0;size<=gridSize*gridsize; size++){
var eval("Node"+size):Node = new Node();
}
PLEASE don't do this! Use arrays (usually) or just give your nodes some sort of ID if you need it.
but how would I associate these nodes into a grid and then connect them to the nodes north south east and west of each one?
Give each node some position information and 4 Node references, north, south, east, and west. There's probably a more efficient way, but building the map row by row (probably populating the 'east' references, maybe the 'south' ones for your list of lists) and then doing a second pass to populate the other nodes would be the most straightforward way.
There are some major differences between Arrays and lists, and one of those major differences is that you can't directly access anything except for the beginning of a linked list (the end as well if you're using a doubly linked list). You'll need to start at a head node and walk through the nodes one by one to get to the position you want.
AS2 or AS3? I'm only "really" familiar with AS3, so I don't wanna go writing a bunch of code if you're not going to be able to get it, though I'm pretty sure the two languages are close enough if you're careful with AS2.
Anyway, just some general comments. It may be worth making one dimension of the grid an Array as you get the direct access ability and simple code of the Array and still manage to save a lot of space in the end (I assume that's the what you're after with a sparse grid like this?). For instance, in a 5000x5000 map, using a multidimensional array would use require storage for 25,000 tiles (50mb at a conservative 2 bytes per file, tile ID and 'next' pointer... probably much more in practice), but the one with the Array and linked list would only require 5000 + <number of tiles used> (down to 5mb + some extra), which is still a pretty huge saving (given a sparse map) with a little benefit to performance. Besides, you're probably unlikely to have a any rows across the whole map with absolutely no tiles in them, so you'd end up having to throw in a head node for a list in all 5000 spots on that first column anyway, actually wasting more space (a linked list requires that extra pointer at the very least, which arrays do not).
As well, depending on how sparse your map ends up being, the type of graph you're after (with each tile pointing to every other tile that it borders) may end up costing quite a bit of extra space/processing time. Also, it'd require some leg work, but I think you can have Arrays with non-consecutive indicies which will be implemented internally using some sort of hash or sparse array anyway, which may do everything you want FOR you.
Not sure if that makes sense... I drew a picture (with only east links) though FWIW