• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 04:20
CEST 10:20
KST 17:20
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
TL.net Map Contest #22 - Voting & Ladder Map Selection1Code S Season 2 (2026) - RO8 Preview4[ASL21] Finals Preview: Two Legacies21Code S Season 2 (2026) - RO12 Preview2herO wins GSL Code S Season 1 (2026)7
Community News
StarCraft II 5.0.16 PTR Patch Notes may 26th107Weekly Cups (May 18-25): MaxPax wins doubles0Crank Gathers Season 4: BW vs SC2 Team League4Weekly Cups (May 11-17): Classic wins double1Code S Season 1 (2026) - RO8 Results2
StarCraft 2
General
The death of cheese, from a professional cheeser. TL Poll: How do you feel about the 5.0.16 PTR balance changes? StarCraft II 5.0.16 PTR Patch Notes may 26th Changing from 12 to 8 is just asking for StarCraft Weekly Cups (May 11-17): Classic wins double
Tourneys
RSL Revival: Season 5 - Qualifiers and Main Event GSL Code S Season 2 (2026) Maestros of The Game 2 announcement and schedule ! Sparkling Tuna Cup - Weekly Open Tournament Crank Gathers Season 4: BW vs SC2 Team League
Strategy
[G] Having the right mentality to improve
Custom Maps
[D]RTS in all its shapes and glory <3 [A] Nemrods 1/4 players
External Content
The PondCast: SC2 News & Results Mutation # 528 Infection Detected Welcome to the External Content forum Mutation # 527 Hell Train
Brood War
General
BGH Auto Balance -> http://bghmmr.eu/ FlaShFTW vs A.Alm Grudge Match Event Soma's ASL Finals Review VPN experiences OGN to release AI-upscaled StarLeague from Feb 24
Tourneys
[ASL21] Grand Finals [Megathread] Daily Proleagues Escore Tournament StarCraft Season 2 [BSL22] WB Final & LB Semis - Saturday 21:00 CEST
Strategy
Any training maps people recommend? Muta micro map competition [G] Hydra ZvZ: An Introduction Fighting Spirit mining rates
Other Games
General Games
Stormgate/Frost Giant Megathread Nintendo Switch Thread ZeroSpace Megathread Path of Exile Dawn of War IV
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
Vanilla Mini Mafia Mafia Game Mode Feedback/Ideas TL Mafia Community Thread Five o'clock TL Mafia
Community
General
US Politics Mega-thread Russo-Ukrainian War Thread Trading/Investing Thread Things Aren’t Peaceful in Palestine Dating: How's your luck?
Fan Clubs
The herO Fan Club!
Media & Entertainment
[Manga] One Piece Anime Discussion Thread [Req][Books] Good Fantasy/SciFi books
Sports
McBoner: A hockey love story 2024 - 2026 Football Thread TeamLiquid Health and Fitness Initiative For 2023 Formula 1 Discussion
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread Facing Challenges in Mobile App Development
TL Community
The Automated Ban List
Blogs
Esportsmanship: How to NOT B…
TrAiDoS
Why RTS gamers make better f…
gosubay
ramps on octagon
StaticNine
ASL S21 English Commentary…
namkraft
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1997 users

The Big Programming Thread - Page 22

Forum Index > General Forum
Post a Reply
Prev 1 20 21 22 23 24 1032 Next
Thread Rules
1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution.
2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20)
3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible.
4. Use [code] tags to format code blocks.
Fujitsi
Profile Joined April 2010
Belgium65 Posts
October 28 2010 13:23 GMT
#421

Thanks for the reply. I have one question about this advice though. What should I practice on?


Try writing programs that make your own life easier.
Now I'm in the middle of writing a prog that tracks which series/animes I have watched, provides some additional info and whatsoever.

I know there are sites that do this for you but once you get your own program working, you'll be very proud of yourself ^^
tofucake
Profile Blog Joined October 2009
Hyrule19215 Posts
October 28 2010 13:34 GMT
#422
One thing you can do to practice is go find some FOSS project, get the code, and try to fix bugs in the bug tracker. Also, you can try to break it. Some companies (Google) will pay you if you find a bug [that nobody else has reported], so not only will you learn but you can make some money.

Before I started taking classes, I learned to program because I wanted to do something. So the very first thing I did was download VB6 and some random bot source (I think it was Feanor's Fyrebot or something, but I don't remember) and I started figuring out what everything did, how, and why. I learned so much.
Liquipediaasante sana squash banana
pinke
Profile Blog Joined October 2010
United States56 Posts
October 28 2010 15:51 GMT
#423
On October 28 2010 21:51 Klesky wrote:
Show nested quote +
On October 28 2010 21:43 pinke wrote:
does anyone know a good place to learn unity?


http://unity3d.com/support/resources/tutorials/

I sincerely hope you found that before me.
Go learn C++, it's more valuable than this, imo.


i agree, but a particular internship is looking for unity
but then I think that rain is wet, so who am I to judge?
VIB
Profile Blog Joined November 2007
Brazil3567 Posts
October 28 2010 15:57 GMT
#424
I wanna learn how to code on the server side. I'm already decent at C++, Java and Python on client side. So I figured I would learn how to code Java Servlets or maybe Python for server.

I'm a complete newbie to client/server, I have no idea what sockets are or how http requests work. I've been reading Google's GWT and App Engine basic tutorials but most of the stuff that mentions server code there are way over my head. When they start talking about configuring Apache I'm like "...wut?" So I spend more time reading the definitions of everything on wikipidia than actually doing the tutorials, it's pretty confusing.

If I google for tutorials most of the stuff I click seem to be way over my head as well. So does anyone have any tips to begin learning client/server communications via http using Java or Python?
Great people talk about ideas. Average people talk about things. Small people talk about other people.
tofucake
Profile Blog Joined October 2009
Hyrule19215 Posts
October 28 2010 16:18 GMT
#425
You should probably just read up on HTTP itself. It's a fairly straightforward protocol, and it's text based so it's easy to understand what's what (unlike something like BNCS, for example).
Liquipediaasante sana squash banana
fabiano
Profile Blog Joined August 2009
Brazil4644 Posts
October 28 2010 16:43 GMT
#426
What do you mean by client/server communications?

If you want to setup a communication between a client and a server that you have created, take a look at the Socket class in Java. If you google for sockets in Java you will find a lot of easy to follow tutorials on how to setup a simple distributed system. If you want add fault tolerance it gets a lot nasty and I think you wont be able to set a decent fault tolerant system without taking a course at the University.

If you want to create a (or an?) web service to feed client requests just look for Glassfish tutorials or google for "java web service tutorials". I am also lost when it comes to deploying web services because I've never done it before, but as far as I remember, at least on Netbeans, all you need to create a web service is to add the annotation @webservice to segments of your code and voilá, you have your web service.

I see that you are a countryman fella, so take a look at www.guj.com.br they probably can help you in our native language.
"When the geyser died, a probe came out" - SirJolt
VIB
Profile Blog Joined November 2007
Brazil3567 Posts
Last Edited: 2010-10-28 18:01:52
October 28 2010 17:23 GMT
#427
I wanna make webapps. I wanna make a website that makes queries to the server then write the server code which would respond to that. Like handling user database and stuff like that. Java web services is probably what I'm looking for, but most tutorials I find by googling are way over my head. All I know is that (or I think I know that) I need something like Apache to make a computer understand http. But I'm not sure how does Java or Python fits into that or how to install it or how to start learning about any of it.

I have a paid host computer with apache which says it supports Python but not Java. And I have no idea why. So right now I'm trying to install apache with java on a virtual machine with ubuntu on my home computer. Just to see how stuff works. But I'm kinda lost here.

Anyway I'll take a look at that website. Thanks a lot

Edit: btw to run Java Servlets on the server. Do I need to install Apache Web Server, Apache Tomcat, or both, or neither?
Great people talk about ideas. Average people talk about things. Small people talk about other people.
G3CKO
Profile Blog Joined March 2009
Canada1430 Posts
October 28 2010 17:49 GMT
#428
I am a second year electrical engineer with knowledge in C and java. Although I can offer general programming help as well.
┌⋉⊳∀⊲) ☆ If your soul has not truly given up, then you can hear the sound that races through the end of the world.
icystorage
Profile Blog Joined November 2008
Jollibee19350 Posts
November 11 2010 11:40 GMT
#429
I am a second year Computer Science major and i'd like to ask for some help on checking on my homework, my professor on Data Structures asked us to make an algorithm on how you can insert data at the end of a given list, middle of the list and at the beginning. Here's my algo:
+ Show Spoiler +

End of the list:
while (list[i] is not null)
do i++
end do
list[i] = data

Beginning of the list:
while (list[i] is not null)
do i++
end do
while (i is not zero)
do list[i+1] = list[i]
i--
end do
list[i] = data

Middle of the list:
while (list[i] is not null)
do i++
end do
while (i is not i/2)
do list[i+1] = list[i]
i--
end do
list[i] = data

Is this correct?
I'd like to improve on it as well but that's all i've got. Thanks a lot
LiquidDota StaffAre you ready for a Miracle-? We are! The International 2017 Champions!
swat
Profile Blog Joined January 2008
Australia142 Posts
November 11 2010 13:57 GMT
#430
On November 11 2010 20:40 icystorage wrote:
+ Show Spoiler +

End of the list:
while (list[i] is not null)
do i++
end do
list[i] = data

Beginning of the list:
while (list[i] is not null)
do i++
end do
while (i is not zero)
do list[i+1] = list[i]
i--
end do
list[i] = data

Middle of the list:
while (list[i] is not null)
do i++
end do
while (i is not i/2)
do list[i+1] = list[i]
i--
end do
list[i] = data

Is this correct?
I'd like to improve on it as well but that's all i've got. Thanks a lot


For your beginning algorithm:

Assuming kinda pseudo code, allowed arrays of undefined length (so undefined length javascript arrays possibly), in this array there is no such thing as the terminating element \0 and cannot use an STL a better beginning algorithm is:

var prev = list[0];
var current;
var i=1; //so we skip the first item.
do while(list[i] is not null)
current = list[i];
list[i] = prev;
prev = current;
i++;
end do
list[i]=current
list[0] = newdata.

note: I also assume the array will at least have 2 elements (cbf error checking).

this will complete in 1 iteration of the array (while yours did 2 iterations forward, then backwards), so it is better performance wise, but not memory wise (as I use 2 temp variables which you wouldn't of). but the use of 2 more variables will be moot compared to the performance savings when you get to larger arrays.

Your middle of the array will not work either because of these 2 lines:
while (i is not i/2)
i--
your i variable would be changing constantly... so if you started at lets say 20 it would be like...
20 /2 = 10 i is at 20 is its fine...
by the time it got to 10 it would be
10/2 = 5 i is at 10 so were fine.
etc etc.

to make yours work you would need to do
while (list[i] is not null)
do i++
end do
n = i/2
while (i > n)
do list[i+1] = list[i]
i--
end do
list[i] = data

I changed your 2nd while to > because if you had a odd number array (lets say 11) and did n/2 you would get 5.5 (unless it went to all full numbers then it wouldn't matter) the loop would go on forever.

Hope this helps.
icystorage
Profile Blog Joined November 2008
Jollibee19350 Posts
November 11 2010 14:05 GMT
#431
i have taken note on your corrections especially on my 'middle' algorithm, i/2 shouldve been n/2 where n is the number of elements on the array and also on the 2nd while,and also on my beginning algo, i never thought of it that way, thank you very much
LiquidDota StaffAre you ready for a Miracle-? We are! The International 2017 Champions!
BisuDagger
Profile Blog Joined October 2009
Bisutopia19364 Posts
November 11 2010 14:31 GMT
#432
Hoping to be Helpful. PM me if u ever need my help or if u want me to address your code on this forum. I"m a C++ programmer.
ModeratorFormer Afreeca Starleague Caster: http://afreeca.tv/ASL2ENG2
catamorphist
Profile Joined May 2010
United States297 Posts
November 11 2010 14:39 GMT
#433
On November 11 2010 20:40 icystorage wrote:
I am a second year Computer Science major and i'd like to ask for some help on checking on my homework, my professor on Data Structures asked us to make an algorithm on how you can insert data at the end of a given list, middle of the list and at the beginning. Here's my algo:


Tip on clarity -- it looks like you're using an automatically-resizing array with efficient random access; the term of art for that is "vector." When you say "list" that might imply multiple things, a linked list foremost among them.
http://us.battle.net/sc2/en/profile/281144/1/catamorphist/
mcc
Profile Joined October 2010
Czech Republic4646 Posts
November 11 2010 14:39 GMT
#434
On November 11 2010 20:40 icystorage wrote:
I am a second year Computer Science major and i'd like to ask for some help on checking on my homework, my professor on Data Structures asked us to make an algorithm on how you can insert data at the end of a given list, middle of the list and at the beginning. Here's my algo:
+ Show Spoiler +

End of the list:
while (list[i] is not null)
do i++
end do
list[i] = data

Beginning of the list:
while (list[i] is not null)
do i++
end do
while (i is not zero)
do list[i+1] = list[i]
i--
end do
list[i] = data

Middle of the list:
while (list[i] is not null)
do i++
end do
while (i is not i/2)
do list[i+1] = list[i]
i--
end do
list[i] = data

Is this correct?
I'd like to improve on it as well but that's all i've got. Thanks a lot


Well do you have to implement the list as array ? If not you can use more memory intensive structure where each element has the value and a pointer to the next element. You just need to keep pointers to first and last element of the list in 2 variables. In this case adding to the beginning of the list and at the end of the list are "atomic" operations that do not require traversing the array, and only inserting in the middle requires that(you will need 3rd variable to keep the length of the list to do that easily).

Pseudocode will be something like :
+ Show Spoiler +

var beginning;
var end;
var len;

//adding in the beginning
var temp = new node(data);
temp.next = beginning;
beginning = temp;
len++;
if (temp.next == null) end=beginning; //it was the first element on the list

//adding at the end
var temp = new node(data);
if (end != null) end.next = temp;
end = temp;
len++;
if (beginning == null) beginning =end; //it was the first element on the list

//adding in the middle (just a structure, needs to be polished to actually work)
var iter = beginning;
for (i = 0; i < len/2; i++)
{
iter = iter.next;
}
var temp = new node(data);
var nnode = iter.next;
iter.next = temp;
temp.next = nnode;

mcc
Profile Joined October 2010
Czech Republic4646 Posts
November 11 2010 14:45 GMT
#435
Actually now that I think about it, you don't need len variable , just add new variable that points to the middle of the list and all your operations will be O(1), total win )
icystorage
Profile Blog Joined November 2008
Jollibee19350 Posts
November 11 2010 14:53 GMT
#436
the term in my uni is just starting so i think we're just on the basics of data structures but i really appreciate the help you guys give!
LiquidDota StaffAre you ready for a Miracle-? We are! The International 2017 Champions!
catamorphist
Profile Joined May 2010
United States297 Posts
November 11 2010 18:20 GMT
#437
On November 11 2010 23:45 mcc wrote:
Actually now that I think about it, you don't need len variable , just add new variable that points to the middle of the list and all your operations will be O(1), total win )


Inserting into the middle of a linked list isn't constant time. You need to traverse it one node at a time until you get to the position in the middle at which you want to insert.
http://us.battle.net/sc2/en/profile/281144/1/catamorphist/
Craton
Profile Blog Joined December 2009
United States17284 Posts
November 11 2010 19:08 GMT
#438
Yeah, newbie!

+ Show Spoiler +
One of these days I'll actually learn myself the time thingys. :-P
twitch.tv/cratonz
mcc
Profile Joined October 2010
Czech Republic4646 Posts
November 11 2010 20:17 GMT
#439
On November 12 2010 03:20 catamorphist wrote:
Show nested quote +
On November 11 2010 23:45 mcc wrote:
Actually now that I think about it, you don't need len variable , just add new variable that points to the middle of the list and all your operations will be O(1), total win )


Inserting into the middle of a linked list isn't constant time. You need to traverse it one node at a time until you get to the position in the middle at which you want to insert.

If you are adding always exactly in the middle I do not think you really need to traverse. If you keep a pointer to the middle node and after it is done move that pointer to the new node or keep it at the same node depending if the length of the list is even or not. But I was wrong about not needing a length variable, you need it to determine if you need to move the middle pointer or not. You do not really need a length, a bit flag for even/not even would suffice.

You need to traverse only if you search for values, or you want sorted list and staff like that. Inserting at a fixed given position is I think O(1).
catamorphist
Profile Joined May 2010
United States297 Posts
Last Edited: 2010-11-11 21:46:10
November 11 2010 21:45 GMT
#440
On November 12 2010 05:17 mcc wrote:
Show nested quote +
On November 12 2010 03:20 catamorphist wrote:
On November 11 2010 23:45 mcc wrote:
Actually now that I think about it, you don't need len variable , just add new variable that points to the middle of the list and all your operations will be O(1), total win )


Inserting into the middle of a linked list isn't constant time. You need to traverse it one node at a time until you get to the position in the middle at which you want to insert.

If you are adding always exactly in the middle I do not think you really need to traverse. If you keep a pointer to the middle node and after it is done move that pointer to the new node or keep it at the same node depending if the length of the list is even or not. But I was wrong about not needing a length variable, you need it to determine if you need to move the middle pointer or not. You do not really need a length, a bit flag for even/not even would suffice.

You need to traverse only if you search for values, or you want sorted list and staff like that. Inserting at a fixed given position is I think O(1).


OK, yeah, it would be constant time if you decided to keep track of the middle. Sorry for misreading.
http://us.battle.net/sc2/en/profile/281144/1/catamorphist/
Prev 1 20 21 22 23 24 1032 Next
Please log in or register to reply.
Live Events Refresh
Next event in 3h 40m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
WinterStarcraft805
StarCraft: Brood War
Calm 9312
Horang2 339
Backho 172
actioN 148
Leta 88
Zeus 85
PianO 83
Pusan 79
ToSsGirL 55
Shine 45
[ Show more ]
sSak 32
soO 21
JulyZerg 16
NaDa 13
Sacsri 10
Noble 8
League of Legends
JimRising 571
Counter-Strike
shoxiejesuss758
ceh9529
olofmeister476
Super Smash Bros
Mew2King73
Other Games
Happy331
ViBE33
Organizations
Other Games
gamesdonequick722
Counter-Strike
PGL226
Other Games
BasetradeTV184
StarCraft: Brood War
UltimateBattle 65
lovetv 9
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 12 non-featured ]
StarCraft 2
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Nemesis3065
• Rush1505
Upcoming Events
Wardi Open
3h 40m
Monday Night Weeklies
7h 40m
Replay Cast
15h 40m
Sparkling Tuna Cup
1d 1h
WardiTV Spring Champion…
1d 2h
Maestros of the Game
1d 7h
The PondCast
2 days
Kung Fu Cup
2 days
uThermal 2v2 Circuit
2 days
Maestros of the Game
2 days
[ Show More ]
Replay Cast
2 days
Replay Cast
3 days
WardiTV Spring Champion…
3 days
Maestros of the Game
3 days
Replay Cast
4 days
uThermal 2v2 Circuit
4 days
Maestros of the Game
4 days
Replay Cast
5 days
Solar vs Classic
uThermal 2v2 Circuit
5 days
GSL
5 days
herO vs Rogue
Maru vs Cure
uThermal 2v2 Circuit
6 days
BSL
6 days
Liquipedia Results

Completed

KK 2v2 League Season 1
RSL Revival: Season 5
Heroes Pulsing #1

Ongoing

BSL Season 22
IPSL Spring 2026
KCM Race Survival 2026 Season 2
Acropolis #4
CSCL: Masked Kings S4
YSL S3
SCTL 2026 Spring
WardiTV Spring 2026
Maestros of the Game 2
2026 GSL S2
Murky Cup 2026
Stake Ranked Episode 2
CS Asia Championships 2026
Asian Champions League 2026
IEM Atlanta 2026
PGL Astana 2026
BLAST Rivals Spring 2026
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026

Upcoming

BSL 22 Non-Korean Championship
CSLAN 4
Blizzard Classic Cup 2026
Kung Fu Cup 2026 Grand Finals
CranK Gathers Season 4: BW vs SC2 Team League
HSC XXIX
uThermal 2v2 2026 Main Event
Heroes Pulsing #3
Heroes Pulsing #2
Esports World Cup 2026
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.