• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 12:46
CEST 18:46
KST 01:46
  • 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
[ASL22] Ro8 Preview: In A Tizzy6[ASL22] Ro16 Preview: Holy Diver5[ASL22] Ro16 Preview: Rough Waters10[ASL22] Ro24 Preview: Siren's Call8[ASL22] Ro24 Preview: Summer's End9
Community News
Weekly Cups (Sep 13-20): herO scores triple1BSL Season 235Weekly Cups (Sep 7-12): SHIN, ByuN, MaxPax double down1StarCraft open world shooter announced at BlizzCon101Weekly Cups (Aug 30-Sep 7): herO thrives amid growing schism10
StarCraft 2
General
Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool The Death of Cheese: From a Professional Cheeser Weekly Cups (Sep 13-20): herO scores triple Balance hotfix patch 5.0.16b (July 16) StarCraft open world shooter announced at BlizzCon
Tourneys
2026 GSTL Announcement Sparkling Tuna Cup - Weekly Open Tournament RSL Revival: Season 6 - Qualifiers and Main Event RSL goes to London! 2026 Offline Finals Nov 21-22 SC2 AI Tournament 2026 Fall
Strategy
[H] ZvP Mid-Late Game: Stalkers Collossi HT
Custom Maps
Nexus Wars 2021 GUIDE [M] (2) Industrial Park
External Content
Mutation # 544 Double Trouble The PondCast: SC2 News & Results Mutation # 543 Enhanced Defenses Mutation # 542 The Ascended
Brood War
General
Bot on ladder an AI researcher's take on the ladder bot New 3v3 BGH Ladder (and more) on ShieldBattery! Recent recommended BW games BSL Season 23
Tourneys
[IPSL] IPSL is Back With Winter 26-27! [ASL22] Ro8 Day 1 [BSL23] SM: Ret vs TerrOr -> DragOn vs StRyKeR [Megathread] Daily Proleagues
Strategy
Cliff Jump Revisited (1 in a 1000 strategy) Replay Review Process - What do you do? Simple Questions, Simple Answers Odyssey Mineral Stack Saturation
Other Games
General Games
Warcraft III: The Frozen Throne Nintendo Switch Thread Stormgate/Frost Giant Megathread EVE Corporation Diablo IV
Dota 2
Dota 2 Champions League Season 3 Begins April 25! Official 'what is Dota anymore' discussion
League of Legends
[TL LoL EUW IHs] Teemo shall perish
Heroes of the Storm
Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
TL Mafia Community Thread
Community
General
US Politics Mega-thread Artificial Intelligence Thread Things Aren’t Peaceful in Palestine All you football fans (soccer)! Russo-Ukrainian War Thread
Fan Clubs
MarineLorD Fan Club The Creator Fan Club The ShoWTimE Fan Club
Media & Entertainment
Movie Discussion! [Manga] One Piece Diablo Animated Series on Netflix
Sports
Football (Soccer) Thread TeamLiquid Health and Fitness Initiative For 2023 MLB/Baseball 2023
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
Recent Gifted Posts
Blogs
Gaming Intensity, Problemati…
TrAiDoS
38 yo Retired SWE loo…
PurE)Rabbit-SF
Can Bots Beat Pros?? Starcr…
namkraft
[meme] I finally understa…
LUCKY_NOOB
Regacy Esports:Our Goa…
regacyesports
Dreaming of BW patches (mod…
c3rberUs
Customize Sidebar...

Website Feedback

Closed Threads



Active: 12783 users

The Big Programming Thread - Page 25

Forum Index > General Forum
Post a Reply
Prev 1 23 24 25 26 27 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.
catamorphist
Profile Joined May 2010
United States297 Posts
November 19 2010 01:15 GMT
#481
On November 19 2010 00:35 KaiserJohan wrote:
Hmm, anyone know if there really is no way of getting the size of a class instance in C#? sizeof only returns the size of the pointers, and Marshal.Sizeof does not work on class instances.

It kinda makes the #1 solution to object-to-byte streaming hard :p

Anyone know any other way of getting size of a class instance in C#? (imho it feels like a major limitation if its not possible)



Why does it make that hard? Write out the length of the serialized object to the stream before you write the object. Read the length, and then read the object. Problem solved.

No, there isn't a framework method for crawling all the references and getting the size like that. But that wouldn't be what you want, anyway. You want the length of the serialized representation, and if you're using any reference types that you didn't write yourself, then the serialized length might well be different from the size in memory.
http://us.battle.net/sc2/en/profile/281144/1/catamorphist/
Cambium
Profile Blog Joined June 2004
United States16368 Posts
Last Edited: 2010-11-19 07:17:02
November 19 2010 07:15 GMT
#482
Anyone good with NP-C reductions want to lend me a hand here?

Tree Reconstruction Problem:

Given a collection of trees: T_1, T_2, ..., T_n
and a positive integer m

Decide whether there exists a tree T of size at most m, such that T_1,...T_n are all isomorphic to a subtree* of T.

Prove that TreeRec is NP-complete

+ Show Spoiler [*Subtree isomorphism] +

Given H and G, H is isomorphic to a subtree in G iff
For function h: V(H) -> V(G) (vertices of a graph)
For every edge (u, v) in H, there exist vertices h(u) and h(v) joined by an edge in G.


Anyway, I tried these reductions:
Subgraph isomorphism (I couldn't really link trees with graphs, not to mention N trees)
Clique (I tried linking "m" to a clique of size "m", didn't work out; but I think this is the closest one I have)
3-SAT (I got stuck)
m-SAT (I got even more stuck)

I e-mailed my TA for some help, and they suggested that I try 3-colour, and I got no luck with that either.

Given the decision problem, it takes "m" as an input, the reduction problem should also use "m" somewhere (that's why I tried m-SAT), and I don't really understand where I could go with 3-colour.

Help/hints would be greatly appreciated...
When you want something, all the universe conspires in helping you to achieve it.
mmp
Profile Blog Joined April 2009
United States2130 Posts
November 19 2010 07:28 GMT
#483
On November 14 2010 01:24 Osmoses wrote:
Hey gang,

I've been working on a game recently, a grid based strategy game focusing on good performance, but now I've started working on pathing, since I want something like workers responding to clicks, and the performance is taking a hit. If it's just corridors, it's easy, big O of 1 most of the time, but once I start working with open spaces, it gets alot more complicated trying to find the shortest path with the least amount of work.

I'm trying out a couple of different methods of going about this right now, but in the meantime I thought I'd ask if anyone can recommend a good book or something concerning 2d pathing? Below is a screenshot of a potential stage, with a example start and end marker placed.

[image loading]

If your A* is too slow then heuristic may need tweaking, you may need some common sense performance tweaks, and above all you want to break down the problem into easy steps. Try double-ended searching to waypoints along the path and store these results somewhere. Also, don't waste your time searching on trivially small spaces - you can build a hash table of precomputed paths based on the pattern of impassable terrain (like, 3x3 or 4v4).

Even more badass is to just guess the answer.
I (λ (foo) (and (<3 foo) ( T_T foo) (RAGE foo) )) Starcraft
MasterOfChaos
Profile Blog Joined April 2007
Germany2896 Posts
Last Edited: 2010-11-19 09:10:41
November 19 2010 09:09 GMT
#484
@KaiserJohan
If you want to serialize .net objects why don't you an existing serializer. And writing a serializer is easy compared to writing a deserializer.
* WCF is can serialize objects in order to send them over the network
* There is BinarySerializer which can serialize most object graphs
* There are several Proto-Buf serializers which are really fast and the serialized data they produce can be (if you create a protobuf description file) used from other languages or different versions of your program.
* There are XmlSerializer and some Json serializers, but they are probably not what you want.

And register or stackoverflow. Very good site for concrete programming questions with definite answers, but bad for discussions.
LiquipediaOne eye to kill. Two eyes to live.
HaN-
Profile Blog Joined June 2009
France1920 Posts
November 22 2010 10:03 GMT
#485
[image loading]
Calendaraka Foxhan
Pawsom
Profile Blog Joined February 2009
United States928 Posts
November 23 2010 15:02 GMT
#486
I have a basic C# question thats really giving me a lot of trouble. Note, this the first assignment or program I've ever attempted to use C# for. The point of the assignment is to teach the chain of responsibility design pattern.

Basically, the code looks like this.


Abstract_Handler.cs
+ Show Spoiler +

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace CIS476_Project3_Example1
{

public class Abstract_Handler
{
protected Abstract_Handler next;
public Abstract_Handler()
{
next = null;
}
public void addLink(ref Abstract_Handler n)
{
if (next != null)
{
next.addLink(ref n);
}
else
{
next = n;
}
}
public virtual void handleRequest(ref Request x)
{
next.handleRequest(ref x);
}
}
}


USD_Handler.cs
+ Show Spoiler +

namespace CIS476_Project3_Example1
{
public class USD_Handler : Abstract_Handler
{
public const float EURO_TO_USD_RATE = 1.04f;

public override void handleRequest(ref Request x)
{
x.value_1 *= EURO_TO_USD_RATE;

if ( x.CurrencyType != 0 )
{
handleRequest(ref x);
}
}
}
}



Inside of Main( ) I call the following code:
+ Show Spoiler +



/* Instantiate Handlers */
USD_Handler USD = new USD_Handler();/* Root */
CAD_Handler CAD = new CAD_Handler();/* Link 2 */
AUD_Handler AUD = new AUD_Handler();/* Link 3 */


/* Create Chain of Responsibility */
USD.addLink( ref CAD );
USD.addLink( ref AUD );



Now when I build, I get an error flagging those last 2 signs that says soemthing along the lines of Abstract_Handler.addLink(ref Abstract_Handler) has the wrong parameter, even though USD, CAD, AUD Handlers are all subclasses of the abstract handler. Am I doing something wrong with inheritance or virtual function overloading? Am I using references correctly? At this point I really have no idea. I tried C# because of how easy GUI work seems to be.

For reference, here's my entire program written in C++.
http://codepad.org/KJ87r5fs
Craton
Profile Blog Joined December 2009
United States17303 Posts
Last Edited: 2010-11-23 18:17:58
November 23 2010 17:43 GMT
#487
I'm fiddling around with it (my C# is so-so). It'd help if you posted your Request class (and the other classes so I can test w/ them).

It looks like you're using ref where you don't need to be or at least wrong somehow. Not sure atm. If I could just figure out why I'm throwing a NullReferenceException after finishing the last conversion I'd be set...

http://codepad.org/7rZRxHl9 Seems to be working.

As I understand it, objects passed around in C# are inherently passed by reference. C# also doesn't have pointers.
twitch.tv/cratonz
Pawsom
Profile Blog Joined February 2009
United States928 Posts
November 23 2010 19:29 GMT
#488
On November 24 2010 02:43 Craton wrote:
As I understand it, objects passed around in C# are inherently passed by reference.


Thanks a ton for your help man. Cleared up quite a few things. After working almost entirely on embedded C code the past two years, I'm starting to overthink some things in these higher level languages it seems :p
catamorphist
Profile Joined May 2010
United States297 Posts
November 24 2010 00:23 GMT
#489
On November 24 2010 02:43 Craton wrote:
As I understand it, objects passed around in C# are inherently passed by reference. C# also doesn't have pointers.


Nitpicker's corner: C# does have pointers, but they're not useful for this. C# objects aren't exactly passed by reference in the same way that C++ functions can pass by reference:


void swap(int &x, int &y) { // in C++
int temp = x;
x = y;
y = temp;
}

void swap(MyType x, MyType y) { // in C#
MyType temp = x;
x = y; // NOT doing the same thing!
y = temp; // caller's reference will not be swapped!
}


It would be accurate to say that C# passes object references by value. When a function receives a reference type as a parameter, it receives a new reference to the same object. If the object is mutable and you change fields on that object, they'll be visible to anyone else who has a reference to the same object. (This is the case with your Request object.) However, you don't have the same reference that the caller has, and you can't make the caller's reference point to a different object, or to null.

So that's what the ref keyword is for. If you use ref parameters, you're actually passing by reference in the C++ sense.


void swap(ref MyType x, ref MyType y) { // this works like C++
// ...
}
http://us.battle.net/sc2/en/profile/281144/1/catamorphist/
Craton
Profile Blog Joined December 2009
United States17303 Posts
November 24 2010 00:44 GMT
#490
It would be accurate to say that C# passes object references by value. When a function receives a reference type as a parameter, it receives a new reference to the same object.

What is the difference between the two?
twitch.tv/cratonz
catamorphist
Profile Joined May 2010
United States297 Posts
Last Edited: 2010-11-24 01:14:18
November 24 2010 01:11 GMT
#491

public static void Main(string[] args)
{
object alpha = new object(),
beta = new object();

// at this point in time, we have two references, alpha and beta.
// each one is pointing to some object somewhere on the heap

SetToNullA(alpha);
SetToNullB(ref beta);

// alpha is not null. beta is null.
}

static void SetToNullA(object x)
{
// we passed the reference to alpha by value, making a copy of it.

// now we have THREE references, alpha, beta, and x.

// x is pointing to the same object as alpha -- it's a copy
// of alpha. we could change things about that object using x.

// but x is not alpha. if we set x to null,
// that does not mean alpha is null. this function is a no-op

x = null;
}

static void SetToNullB(ref object y)
{
// we passed the reference to beta by reference.

// y is the same reference as beta. if we set y
// to null, then beta is null, too.

y = null;
}
http://us.battle.net/sc2/en/profile/281144/1/catamorphist/
HowitZer
Profile Joined February 2003
United States1610 Posts
November 24 2010 04:21 GMT
#492
On November 24 2010 09:44 Craton wrote:
Show nested quote +
It would be accurate to say that C# passes object references by value. When a function receives a reference type as a parameter, it receives a new reference to the same object.

What is the difference between the two?


When you send an object in C# by default it is like a pointer in C++

void mowlawn(LawnMower* mower) c++

void mowlawn(LawnMower mower) c#

Those are equivalent. In both cases setting mower to something else in the function has no effect on the original pointer to mower that was sent in.

void mowlawn(LawnMower& mower) c++

void mowlawn(ref LawnMower mower) c#

And these two are the same thing. If you change what mower points to in the function, the caller mower pointer is changed.
Human teleportation, molecular decimation, breakdown and reformation is inherently purging. It makes a man acute.
KaiserJohan
Profile Joined May 2010
Sweden1808 Posts
November 24 2010 19:52 GMT
#493
On November 22 2010 19:03 HaN- wrote:
[image loading]



Hahaha, you sir win the intarwebz
England will fight to the last American
MasterOfChaos
Profile Blog Joined April 2007
Germany2896 Posts
November 24 2010 20:04 GMT
#494
On November 24 2010 13:21 HowitZer wrote:
void mowlawn(LawnMower& mower) c++
void mowlawn(ref LawnMower mower) c#

And these two are the same thing.

Those two are completely different. The C# code is more like
void mowlawn(LawnMower** mower)

"What is the difference between the two?"
pass by reference would imply that the variables you normally work with have value sematics. But they are references themselves. And when you pass the reference to a function it gets copied, just like a value would be copied.
LiquipediaOne eye to kill. Two eyes to live.
VIB
Profile Blog Joined November 2007
Brazil3567 Posts
November 26 2010 18:52 GMT
#495
Just wanted to let you guys know that these days I finally learned about www.stackoverflow.com and my life changed since then. That's the best website in the history of the internet. If you code on any level and haven't been there yet, you should.

The community is awesomely well organized, it's impressive. TL could get some ideas from there. Their system really works well.
Great people talk about ideas. Average people talk about things. Small people talk about other people.
dapierow
Profile Blog Joined April 2010
Serbia1316 Posts
November 26 2010 21:01 GMT
#496
Hi guys first time poster here, I have a question about creating a square wave table in JAVA

Ive found out that the formula for it is amplitude at max (127) for half the cycle and then zero for the other half \

so the wavetable is only 2 elements

my given frequency is 440 hz and my sample rate is 44100

can anyone help me out for creating a private instance variable for an array of integers that represent a wave table? the consturcter has to be the code for creating and populating the array



Eat.Sleep.Starcraft 2
KaiserJohan
Profile Joined May 2010
Sweden1808 Posts
Last Edited: 2010-11-29 00:03:13
November 28 2010 23:40 GMT
#497
EDIT: Nevermind, my bad >_>
England will fight to the last American
holdthephone
Profile Blog Joined August 2010
United States523 Posts
November 30 2010 06:20 GMT
#498
I really screwed this semester up, and if worst comes to worst I may even have to retake one of my comp sci classes. I'll probably be dropping from my 3.25 gpa to a 2.6 -- honestly haven't felt this terrible for a long time.

Am I screwed now for finding an internship? Does gpa play a big role in finding work? I'm headed into my 2nd semester of junior year and kind of feel like i'm way behind the pack. I'm straight As from here on out, swear to god -- but has the damage already been done?
catamorphist
Profile Joined May 2010
United States297 Posts
Last Edited: 2010-11-30 07:13:09
November 30 2010 07:11 GMT
#499
Competence plays a big role in finding work; there is a huge, perpetual shortage of competent programmers. If you can point at reasonable-quality open-source work that you have done you are automatically sitting on top of the pile, unless you're trying to intern at Google. Worry about your Github exclusively instead of worrying about your GPA.
http://us.battle.net/sc2/en/profile/281144/1/catamorphist/
pinkranger15
Profile Joined June 2010
Philippines1597 Posts
December 01 2010 14:28 GMT
#500
hey guys. i'm having a problem right now about the correct algorithm to use in computing exponent. we all know that the basic way to do it is by iteration ( 2^4 = 2 * 2 * 2* 2), but i want to do it recursively so that i will execute faster.

for example, if my exponent is an even number, i have to divide it by 2 until it will not be divided anymore, it will look like this
+ Show Spoiler +
2^e = 2^e/2 * 2^e/2
or
2^8 = 2^4 * 2^4
2^4 = 2^2 * 2^2
2^2 = 2^1 * 2^1
or
2^10 = 2^5 * 2^5
2^5 = 2^4 * 2
2^4 = 2^2 * 2^2


and if my exponent is an odd number, it will look like this
+ Show Spoiler +
2^e = 2^(e-1) * 2
or
2^5 = 2^4 * 2
2^4 = 2^2 * 2^2
2^2 = 2^1 * 2^1


i did my best, and my head is really aching right now. i hope someone will be able to help me. here is the code that i made.


else if (e%2 == 0){ // if the exponent is even
for (i = 0; i < e; i++){
e = e/2;
if (e%2 == 0){
for (i = 0; i < e; i++){
res = res * b;
res = 2*res;
}
}

else if (e%2 == 1){
z = e-1;
for (i = 0; i < z; i++){
res = res * b;
res = 2*res;
}
res = res * b;
}
}
printf("%d\n\n", res);
}

else if (e%2 == 1){ // if the exponent is odd
for (i = 0; i <= e; i++){
e = (e-1) * e;
e = e/2;
res = res * b;
}
printf("%d\n\n", res);
}




thanks guys!
yoyo!
Prev 1 23 24 25 26 27 1032 Next
Please log in or register to reply.
Live Events Refresh
Monday Night Weeklies
16:00
#64
RotterdaM387
TaKeTV 133
TKL 106
IndyStarCraft 62
SteadfastSC44
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
RotterdaM 387
ProTech146
ByuN 111
TKL 106
UpATreeSC 70
IndyStarCraft 62
SteadfastSC 44
BRAT_OK 33
SHIN 26
MindelVK 7
EnDerr 1
StarCraft: Brood War
Bisu 2204
ggaemo 444
Stork 285
Barracks 214
Larva 211
firebathero 115
Dewaltoss 102
Hyun 96
Sharp 77
Mong 45
[ Show more ]
Shinee 38
BeSt 38
ToSsGirL 27
Trap 25
Sexy 19
Free 18
Terrorterran 17
HiyA 17
scan(afreeca) 15
yabsab 13
NaDa 12
IntoTheRainbow 8
eros_byul 1
Dota 2
Gorgc7612
qojqva1848
Counter-Strike
x6flipin607
edward190
Other Games
Liquid`RaSZi2056
hiko1105
FrodaN791
B2W.Neo632
Beastyqt348
Liquid`VortiX191
ArmadaUGS124
QueenE92
Trikslyr63
Mew2King54
KnowMe20
Rex18
Organizations
Dota 2
PGL Dota 2 - Main Stream12441
PGL Dota 2 - Secondary Stream3022
Other Games
BasetradeTV44
[ Show 15 non-featured ]
StarCraft 2
• mYiSmile130
• StrangeGG 8
• intothetv
• AfreecaTV YouTube
• Kozan
• IndyKCrew
• Migwel
StarCraft: Brood War
• Michael_bg 5
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• C_a_k_e 3282
League of Legends
• Nemesis2152
• TFBlade754
Other Games
• Shiphtur217
Upcoming Events
Sparkling Tuna Cup
17h 14m
Afreeca Starleague
17h 14m
Light vs EffOrt
OSC
19h 14m
PiGosaur Cup
1d 7h
Kung Fu Cup
1d 18h
The PondCast
2 days
Replay Cast
3 days
Korean StarCraft League
4 days
CranKy Ducklings
4 days
GSL
5 days
[ Show More ]
Yamato Cup
5 days
Replay Cast
6 days
Afreeca Starleague
6 days
WardiTV Weekly
6 days
Liquipedia Results

Completed

Super Anchor Qualifying S3
Blizzard Classic Cup 2026
Big Dog Cup 2026 Div 1

Ongoing

ASL Season 22
CSL 2026 AUTUMN (S22)
Acropolis #5
Acropolis #5 - GSA
Calamity Invitational
Logitech G Play Connect 2026
SL StarSeries Fall 2026
FISSURE Playground #3
BLAST Open Fall 2026
Esports World Cup 2026
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026

Upcoming

Acropolis #5 - GSB
Acropolis #5 - GSC
BSL Season 23
SC4ALL II: Brood War
BSL 23: Non-Korean Championship
HSC XXX
Stellar Fest 2: Lunar Cup
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
RSL Offline Finals
Copium Cup
PGL Major Singapore 2026
Stake Ranked Episode 6
BLAST Rivals Fall 2026
IEM Beijing 2026
Stake Ranked Episode 5
PGL Masters Bucharest 2026
1win Private Club #2
Thunderpick World Champ. '26
ESL Pro League Season 24
Stake Ranked Episode 4
1win Private Club #1
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.